ํธ๋์ด ํธ๋์ ๋ณ๊ฒฝํ์ง ์๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๋ค์ ํธ๋์ ํ์ฌ ํธ๋์ด ๋๋ ํ ์ฌ์์ ์์ํ์ง๋ง ํ์ฌ ํธ๋์ ์ด ์๊ฐ์ด ์ง๋๋ฉด ๊ณ์๋ฉ๋๋ค. ๊ฒฐ๊ตญ, ํธ๋์ด ๋๋ฌ๋ค๋ ๊ฒ์ ๊นจ๋ซ๊ณ ์ฌ์์ ๋ฉ์ถฅ๋๋ค. ์ด๊ฒ์ ๋ด๊ฐ ์ฌ์ฉํ๋ ์ถ๋ ฅ์ด๋ ๋ฏน์์ ๊ด๊ณ์์ด ๋ฐ์ํฉ๋๋ค. ๋ด๊ฐ ๋งํ๋ ๊ฒ์ ๊ทธ๋ฆผ์ผ๋ก ๊ทธ๋ฆฌ๊ธฐ ์ด๋ ค์ธ ์ ์์ผ๋ฏ๋ก ncmpcpp์์ ์ด๋ป๊ฒ ๋ณด์ด๋์ง ๊ทธ๋ฆผ์ ์ฒจ๋ถํ์ต๋๋ค.
์ฐธ๊ณ : mopidy๋ ํ์ฌ ์ด์ ํธ๋์ธ Verstummt!
์ํ๊น๊ฒ๋ mopidy ๋ก๊ทธ์์ ๊ด๋ จ ๋ฐ์ดํฐ๋ฅผ ์ถ์ ํ ์ ์์ต๋๋ค. ํธ๋์ด ๋ณ๊ฒฝ๋์์์ ์ธ์ํ์ง ๋ชปํ๋ ๊ฒ ๊ฐ์ผ๋ฏ๋ก ๋ณ๊ฒฝ ์ฌํญ์ ๊ธฐ๋กํ์ง ์์ต๋๋ค.
mpc next ๋ฑ์ ์ฌ์ฉํ์ฌ ํธ๋์ ์๋์ผ๋ก ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ๋ํ ์ ํํ ์ฒซ ๋ฒ์งธ ๋ ธ๋๊ฐ ๊ณ์ ํ์๋๋ ๋์ ์ฌ์ ๋ชฉ๋ก์ ๋์ ๋๋ฌํ๋ฉด ๋ก๊ทธ์ ๋ค์๊ณผ ๊ฐ์ด ์ ์์ ์ผ๋ก ์ข ๋ฃ๋ฉ๋๋ค.
๋๋ฒ๊ทธ 2016-06-13 14:13:34,350 [29984:MpdSession-13] mopidy.mpd.session
[:: ffff:50.76.48.109 ]:5684: ์ ํด ์์ฒญ
๋ฒ์ : ๋ชจํผ๋ 2.0.0
ํ ์คํธ๋ ํ์ฅ:
ํธ์ง: ๊ฒฐ๊ตญ ๋ค์๊ณผ ๊ฐ์ด ๋ฉ๋๋ค.
DEBUG 2016-06-13 14:47:26,482 [29984:MpdSession-18] mopidy.mpd.session
Request from [::ffff:50.76.48.109]:25131: status
DEBUG 2016-06-13 14:47:26,486 [29984:MpdSession-18] mopidy.mpd.session
Response to [::ffff:50.76.48.109]:25131:
volume: 100
repeat: 0
random: 0
single: 0
consume: 0
playlist: 7
playlistlength: 4
xfade: 0
state: play
song: 0
songid: 3
time: 523:215
elapsed: 523.607
bitrate: 320
OK
DEBUG 2016-06-13 14:47:26,582 [29984:MainThread] mopidy.audio.gst
Got TAG bus message: tags={'audio-codec': [u'MPEG-1 Layer 3 (MP3)'], 'bitrate': [320000], 'has-crc': [False], 'channel-mode': [u'stereo']}
DEBUG 2016-06-13 14:47:26,584 [29984:MainThread] mopidy.audio.gst
Got TAG bus message: tags={'audio-codec': [u'MPEG-1 Layer 3 (MP3)'], 'bitrate': [320000], 'channel-mode': [u'joint-stereo']}
DEBUG 2016-06-13 14:47:26,620 [29984:MpdSession-18] mopidy.mpd.session
Request from [::ffff:50.76.48.109]:25131: idle
DEBUG 2016-06-13 14:47:26,791 [29984:MainThread] mopidy.audio.gst
Got TAG bus message: tags={'audio-codec': [u'MPEG-1 Layer 3 (MP3)'], 'minimum-bitrate': [320031], 'bitrate': [320000], 'maximum-bitrate': [320031], 'channel-mode': [u'joint-stereo']}
DEBUG 2016-06-13 14:47:26,843 [29984:MainThread] mopidy.audio.gst
Got TAG bus message: tags={'audio-codec': [u'MPEG-1 Layer 3 (MP3)'], 'minimum-bitrate': [319725], 'bitrate': [320000], 'maximum-bitrate': [320031], 'channel-mode': [u'joint-stereo']}
DEBUG 2016-06-13 14:47:27,624 [29984:MpdSession-18] mopidy.mpd.session
Request from [::ffff:50.76.48.109]:25131: noidle
DEBUG 2016-06-13 14:47:27,627 [29984:MpdSession-18] mopidy.mpd.session
Response to [::ffff:50.76.48.109]:25131: OK
DEBUG 2016-06-13 14:47:27,755 [29984:MpdSession-18] mopidy.mpd.session
Request from [::ffff:50.76.48.109]:25131: status
DEBUG 2016-06-13 14:47:27,759 [29984:MpdSession-18] mopidy.mpd.session
Response to [::ffff:50.76.48.109]:25131:
volume: 100
repeat: 0
random: 0
single: 0
consume: 0
playlist: 7
playlistlength: 4
xfade: 0
state: play
song: 0
songid: 3
time: 2:215
elapsed: 2.194
bitrate: 320
OK
์ฒ์์ ์ฌ์์ ์์ํ ๋ ธ๋๊ฐ ๋ค์ ์์๋ฉ๋๋ค.
์ด๊ฒ์ ์ผ๋ฐ์ ์ผ๋ก ์ ํด ๋ช ๋ น์ด ์ ์ก๋๊ฑฐ๋ ์ ํ ๋์ค์ง ์๋ ๊ฒฝํฉ ์กฐ๊ฑด ๋๋ฌธ์ ๋๋ค. ๋นํ์๋ ์์ ์ ํ ๋ ์ด๊ฒ์ ๊ณ ์น๋ ค๊ณ ํ๋ ๊ธฐ์ต์ด ๋๋๋ฐ, ์ผ์ด์ค๋ฅผ ๋์ณค์ ์๋ ์์ต๋๋ค.
์๋
ํ์ธ์,
๋ด ๊ฒฝ์ฐ์๋ mpd๊ฐ ํธ๋์ ์
๋ฐ์ดํธํ์ง ์์ง๋ง, ๋ค์์ mpc๋ฅผ ์คํํ ๋ค์ ๋ ๊ณก์ ์ฌ์ํ๊ณ ๋ ๋ฒ์งธ ๊ณก์ ๊ณ์ํด์ ๋ฐ๋ณตํ๊ธฐ ์์ํฉ๋๋ค. ๋๋ ์ถ๋ ฅ ๋งค๊ฐ๋ณ์์ ์ฃผ์์ ์ ๊ฑฐ(๋ฐ ๋ณ๊ฒฝ)ํ์ ๋๋ง ๊ทธ๊ฒ์ ๊ฒฝํํ์ต๋๋ค. ์ด์ ์๋ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ค์ ํ์ ๋ ์ด๋ฐ ์ผ์ด ๋ฐ์ํ์ง ์์์ต๋๋ค. Fwiw, ์ถ๋ ฅ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ถ๋ ฅ์ ์ฌ์ํ๊ณ _๋ฐ_ ์คํธ๋ฆฌ๋ฐํฉ๋๋ค.
-๋จ์ ์ด๋ฆ.
๋ฐฉ๊ธ ํ์ธ๋์์ต๋๋ค. ์ถ๋ ฅ ๋งค๊ฐ๋ณ์๊ฐ ์ฃผ์ ์ฒ๋ฆฌ๋๋ฉด ๋ฌธ์ ๊ฐ ์ฌ๋ผ์ง๋๋ค(๊ธฐ๋ณธ ์ ๊ณต ๊ธฐ๋ณธ๊ฐ ์ฌ์ฉ).
-๋จ์ ์ด๋ฆ.
์ด ๊ฒฝ์ฐ output parameter
๋ ๋ฌด์์ ์๋ฏธํฉ๋๊น?
xdg-config/mopidy/mopidy.conf์ ์ถ๋ ฅ ์ต์ ์ ์๋ฏธํฉ๋๋ค.
๋ด iPhone์์ ๋ณด๋ธ
2016๋ 7์ 25์ผ ์คํ 3์ 26๋ถ์ Thomas Adamcik [email protected]์ด ๋ค์๊ณผ ๊ฐ์ด ์ผ์ต๋๋ค.
์ด ๊ฒฝ์ฐ ์ถ๋ ฅ ๋งค๊ฐ๋ณ์๋ ๋ฌด์์ ์๋ฏธํฉ๋๊น?
โ
๋น์ ์ด ๋๊ธ์ ๋ฌ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๋ ๊ฒ์ ๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ฑฐ๋ GitHub์์ ๋ณด๊ฑฐ๋ ์ค๋ ๋๋ฅผ ์์๊ฑฐํ์ธ์.
์ด๊ฒ์ ๋ํ ์์์ด ์์ต๋๊น? :-)
์
๋ฐ์ดํธ๊ฐ ์์ต๋๊น? ์์ ์ด ์ ๋ง ๊ธฐ๋๋ฉ๋๋ค :D.
-๋จ์ ์ด๋ฆ.
MPD ํ๋ก ํธ์๋๊ฐ ์๋๋ผ ์น ํ๋ก ํธ์๋๋ฅผ ์ฌ์ฉํ๊ณ ์์ง๋ง ๋์ผํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
์ฌ๊ธฐ์ ๋์์ด ๋ ๋งํ ๋ด์ฉ์ ์ถ๊ฐํ ์ ์์์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง ์ค์ ์ ๋ํ ์ ๋ณด๋ฅผ ๊ธฐ๊บผ์ด ์ ๊ณตํ๊ฒ ์ต๋๋ค.
@lilmike ๋ด ์๊ฐ์ ์ง๋ฌธ์ ๊ธฐ๋ณธ ์ ๊ณต๋๋ ๊ธฐ๋ณธ ๋งค๊ฐ๋ณ์์ ๋ค๋ฅธ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ํ์ผ ์ฑํฌ๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ์๋์?
@monokles ์น ํ๋ก ํธ์๋์๋ ์ ํด ๋ช
๋ น์ด ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ mopidy deps
, mopidy config
๋ฐ ๋๋ฒ๊ทธ ๋ก๊ทธ์ ์ถ๋ ฅ์ ์ ๊ณตํ ์ ์์ต๋๊น(dpaste ๋๋ ์ด์ ์ ์ฌํ ๊ฒฝ์ฐ)? ๊ทธ๋ฆฌ๊ณ ์ด๋ค ์น ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๊น?
์๋
ํ์ธ์,
๋๋ ํฐ๋ฅผ ์ทจํ๋ ์ถ๋ ฅ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ๊ณ ์์ผ๋ฉฐ, ๊ทธ๋ฐ ๋ค์ ์ด๋ฅผ ๋ด ์คํผ์ปค๋ก์ ์ถ๋ ฅ์ผ๋ก ๋ถํ ํ๊ณ icecast ์๋ฒ๋ก ์คํธ๋ฆฌ๋ฐํฉ๋๋ค. ์ถ๋ ฅ ๋งค๊ฐ๋ณ์์ ์ฃผ์์ ๋ฌ๋ฉด ๋ฌธ์ ๊ฐ ์ฌ๋ผ์ง๋๋ค. ๋ด๊ฐ ์ค์ ํ๋ฉด ๋ฐ์ํฉ๋๋ค.
-๋จ์ ์ด๋ฆ.
์๋
ํ์ธ์!
@kingosticks , ์ฌ๊ธฐ์์ ๋งค์ฐ ๋ฐ์ ์๊ฐ์
๋๊ธฐ์ด์ ๋ ๊ฐ ์ด์์ ํธ๋์ด ์์ ๋ ๋ฐ์ํ๋ ์ํฉ์ ๋ํ ๊ฐ๋ตํ ์์ฝ:
๋ฎค์ง๋ฐ์ค ์น ํ๋ก ํธ์๋๋ฅผ ์ฌ์ฉํ๊ณ ์์ง๋ง moped(๋ฐ ๋ค๋ฅธ ํ๋ก ํธ์๋)๋ ํ์๋ฉ๋๋ค.
๋ชจํผ๋ ๊ตฌ์ฑ
๋ชจํผ๋ ๋์ค
์ด๋ค ์ด์ ์์์ธ์ง mopidy๊ฐ ๋๋ฒ๊ทธ ๋ก๊ทธ๋ฅผ ์์ฑํ์ง ์์์ต๋๋ค... ์ด์ ๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง
์ด๊ฒ์ด ์ ์ฉํ๋ค๋ฉด ์ฌ๊ธฐ ์ ์ผ๋ฐ ๋ก๊ทธ๊ฐ ์์ต๋๋ค.
์ด ์คํฌ๋ฆฝํธ๊ฐ ์คํ๋๋ ๋์ icecast๊ฐ ์๋๋ผ liquidsoap์ ์ฌ์ฉํ๊ณ ์๋ค๋ ์ ์ ์ ์ํ์ญ์์ค.
๋ ์ด์ ์ ๊ณตํ ์ ์๋ ๊ฒฝ์ฐ(๋๋ ๋๋ฒ๊ทธ ๋ก๊ทธ๊ฐ ์์ฑ๋์ง ์๋ ์ด์ ๋ฅผ ์๋ ค์ค ์ ์๋ ๊ฒฝ์ฐ) ์๋ ค์ฃผ์ธ์!
์๋
ํ์ธ์.
์ ๋ mopidy๋ฅผ ์ฌ์ฉํ๊ธฐ ์์ํ ์ง ๋ถ๊ณผ ๋ช ์๊ฐ๋ฐ์ ๋์ง ์์์ผ๋ฉฐ ์ด๋ฏธ ์ด ๋ฒ๊ทธ์ ์ํฅ์ ๋ฐ๊ณ ์์ต๋๋ค.
@monokles ์ ์ ํํ ๋์ผํ ๋์(๋ด ๊ฒฝ์ฐ์๋ ์ธ ๋ฒ์งธ ๋
ธ๋์์ ๋ฃจํ๊ฐ ๋ฐ์ํจ)
์ฌ๋ฌ๋ถ์ ์ด ๊ฑฐ๋ํ ๋ฒ๊ทธ๋ฅผ ์ด๋ป๊ฒ ํผํ์ต๋๊น?
๊ทํ(๋๋ ๋๊ตฌ๋ ์ง) mopidy deps
, mopidy config
๋ฐ ์ด๋ฅผ ์ฌํํ๋ ๋ฐ ํ์ํ ์ ํํ ๋จ๊ณ์ ๋ํ ์ถ๋ ฅ์ ์ ๊ณตํ ์ ์์ต๋๊น? ๊ฐ์ฌ ํด์.
์ด์ ์ ์ ๊ณต๋ 2๊ฐ์ ๊ฒ์๋ฌผ์ ์ด๋ป์ต๋๊น?
๋ฌธ์ ๋ฅผ ์ฌํํ ์ ์๋ ๋จ๊ณ๋ ์์ต๋๋ค.... HTTP ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ด ๋๊ธฐ์ด์ Spotify ํธ๋ 3๊ฐ๋ฅผ ์ถ๊ฐํ๊ณ ์ฌ์ํ๋ฉด ์ฌ๊ธฐ์ ์ค๋ช ๋ ๋ด์ฉ์ด ํ์๋์ง ์์ต๋๋ค.
๊ตฌ์ฑ์ ์ ๊ณตํ๋ฉด ๋นํ์ค ๊ตฌ์ฑ ์ถ๋ ฅ๊ณผ ๊ด๋ จ๋ ํญ๋ชฉ๋ ํ์๋๋์ง ํ์ธํ ์ ์์ต๋๋ค.
์๋
ํ์ธ์,
๋ด๊ฐ ๋งํ ์์๋ ๊ฒ์ [์ค๋์ค]-> ์ถ๋ ฅ์ด ๊ธฐ๋ณธ๊ฐ์ด ์๋ ๋ค๋ฅธ ๊ฒ์ผ๋ก ์ค์ ๋ ๊ฒฝ์ฐ์๋ง ๋ฐ์ํฉ๋๋ค. ์๋ฅผ ๋ค์ด,
mopidy ๊ตฌ์ฑ(์๋ ์ค์ผ ๋):
[ํต์ฌ]
cache_dir = $XDG_CACHE_DIR/mopidy
config_dir = $XDG_CONFIG_DIR/mopidy
data_dir = $XDG_DATA_DIR/mopidy
max_tracklist_length = 10000
๋ณต์ ์ํ = ๊ฑฐ์ง
[๋ฒ์ฑ ๋ฐ์ถ]
์์ = ์ฌ์ค
console_format = %(๋ ๋ฒจ ์ด๋ฆ)-8s %(๋ฉ์์ง)s
debug_format = %(levelname)-8s %(asctime)s [%(process)d:%(threadName)s] %(name)s\n %(message)s
debug_file = mopidy.log
๊ตฌ์ฑ ํ์ผ =
[์ค๋์ค]
๋ฏน์ = ์ํํธ์จ์ด
๋ฏน์ ๋ณผ๋ฅจ =
์ถ๋ ฅ = ์๋ ์ค๋์ค ์ฑํฌ
๋ฒํผ ์๊ฐ =
[๋๋ฆฌ]
๊ณํ =
ํธ์คํธ ์ด๋ฆ =
ํฌํธ =
์ฌ์ฉ์ ์ด๋ฆ =
๋น๋ฐ๋ฒํธ =
[MPD]
ํ์ฑํ = ์ฌ์ค
ํธ์คํธ ์ด๋ฆ = 127.0.0.1
ํฌํธ = 6600
๋น๋ฐ๋ฒํธ =
max_connections = 20
์ฐ๊ฒฐ ์๊ฐ ์ด๊ณผ = 60
zeroconf = $hostname์ Mopidy MPD ์๋ฒ
command_blacklist =
๋ชฉ๋ก
๋ชฉ๋ก ์ ๋ณด
default_playlist_scheme = m3u
[http]
ํ์ฑํ = ์ฌ์ค
ํธ์คํธ ์ด๋ฆ = 127.0.0.1
ํฌํธ = 6680
static_dir =
zeroconf = $hostname์ Mopidy HTTP ์๋ฒ
[๊ฐ์ธ]
ํ์ฑํ = ์ฌ์ค
ํ๋กํ ์ฝ =
http
https
mms
rtmp
rtmps
rtsp
๋ฉํ๋ฐ์ดํฐ_๋ธ๋๋ฆฌ์คํธ =
์๊ฐ ์ด๊ณผ = 5000
[m3u]
ํ์ฑํ = ์ฌ์ค
base_dir =
default_encoding = ๋ผํด-1
default_extension = .m3u8
์ฌ์ ๋ชฉ๋ก_๋๋ ํ ๋ฆฌ =
[์ํํธ์จ์ด ๋ฏน์]
ํ์ฑํ = ์ฌ์ค
[ํ์ผ]
ํ์ฑํ = ์ฌ์ค
๋ฏธ๋์ด ๋๋ ํ ๋ฆฌ =
$XDG_MUSIC_DIR|์์
~/|ํ
์ ์ธ๋ ํ์ผ ํ์ฅ์ =
.jpg
.jpeg
show_dotfiles = ๊ฑฐ์ง
Follow_symlinks = ๊ฑฐ์ง
๋ฉํ ๋ฐ์ดํฐ_์๊ฐ ์ด๊ณผ = 1000
[ํ์ง์]
ํ์ฑํ = ์ฌ์ค
๋ผ์ด๋ธ๋ฌ๋ฆฌ = sqlite
media_dir = /home/lilmike/Music
scan_timeout = 1000
scan_flush_threshold = 100
scan_follow_symlinks = ๊ฑฐ์ง
์ ์ธ๋ ํ์ผ ํ์ฅ์ =
.์๋ฐฐ ๊ท์น์
.html
.jpeg
.jpg
.ํต๋๋ฌด
.nfo
.png
.txt
[์คํฌํฐ ํ์ด]
ํ์ฑํ = ๊ฑฐ์ง ; ์ฌ์ฉ์ ๊ตฌ์ฑ์ ์ํด ํ์ฅ ํ๋ก๊ทธ๋จ์ด ๋นํ์ฑํ๋์์ต๋๋ค.
[ํ์ธ์ด๋ฒ]
ํ์ฑํ = ์ฌ์ค
๋ฐฑ์
ํ์ผ = ./tracklist_backup.json
[๋ก์ปฌ-sqlite]
ํ์ฑํ = ์ฌ์ค
๋๋ ํ ๋ฆฌ =
์จ๋ฒ local:directory?type=album
์ํฐ์คํธ ๋ก์ปฌ:directory?type=artist
์๊ณก๊ฐ local:directory?type=artist&role=composer
์ฅ๋ฅด ๋ก์ปฌ:๋๋ ํ ๋ฆฌ?์ ํ=์ฅ๋ฅด
์ถ์ฐ์ local:directory?type=artist&role=performer
์ถ์ ์ฐ๋ local:directory?type=date&format=%25Y
๋ก์ปฌ:directory?type=track์ ์ถ์ ํฉ๋๋ค.
์ง๋ ์ฃผ ์
๋ฐ์ดํธ local:directory?max-age=604800
์ง๋ ๋ฌ ์
๋ฐ์ดํธ local:directory?max-age=2592000
์๊ฐ ์ด๊ณผ = 10
use_album_mbid_uri = ์ฐธ
use_artist_mbid_uri = ๊ฑฐ์ง
use_artist_sortname = ๊ฑฐ์ง
์ ์ด๋ ๋๋ฅผ ์ํด ๊ทธ๊ฒ์ ๊นจ๋จ๋ฆฌ๋ ค๋ฉด ๋ค์ ์ฃผ์์ ์ ๊ฑฐํ์ญ์์ค.
๋ชจํผ๋ ๋์ค:
์คํ ํ์ผ: /usr/bin/mopidy
ํ๋ซํผ: Linux-4.10.3-1-ARCH-x86_64-with-glibc2.2.5
ํ์ด์ฌ: /usr/lib/python2.7์ CPython 2.7.13
Mopidy: /usr/lib/python2.7/site-packages์ 2.1.0
Pykka>=1.1: /usr/lib/python2.7/site-packages์ 1.2.0
์์ฒญ>=2.0: /usr/lib/python2.7/site-packages์ 2.13.0
setuptools: /usr/lib/python2.7/site-packages์ 34.3.2
ํจํค์ง>=16.8: /usr/lib/python2.7/site-packages์ 16.8
pyparsing: /usr/lib/python2.7/site-packages์ 2.2.0
6: /usr/lib/python2.7/site-packages์ 1.10.0
Six>=1.6.0: /usr/lib/python2.7/site-packages์ 1.10.0
appdirs>=1.4.0: /usr/lib/python2.7/site-packages์ 1.4.3
ํ ๋ค์ด๋>=3.2: /usr/lib/python2.7/site-packages์ 4.4.2
singledispatch: /usr/lib/python2.7/site-packages์ 3.4.0.3
6: /usr/lib/python2.7/site-packages์ 1.10.0
backports_abc>=0.4: /usr/lib/python2.7/site-packages์ 0.5
Mopidy-Local-SQLite: /usr/lib/python2.7/site-packages์ 1.0.0
setuptools: /usr/lib/python2.7/site-packages์ 34.3.2
ํจํค์ง>=16.8: /usr/lib/python2.7/site-packages์ 16.8
pyparsing: /usr/lib/python2.7/site-packages์ 2.2.0
6: /usr/lib/python2.7/site-packages์ 1.10.0
Six>=1.6.0: /usr/lib/python2.7/site-packages์ 1.10.0
appdirs>=1.4.0: /usr/lib/python2.7/site-packages์ 1.4.3
Mopidy>=1.1: /usr/lib/python2.7/site-packages์ 2.1.0
Pykka>=1.1: /usr/lib/python2.7/site-packages์ 1.2.0
์์ฒญ>=2.0: /usr/lib/python2.7/site-packages์ 2.13.0
setuptools: /usr/lib/python2.7/site-packages์ 34.3.2
ํจํค์ง>=16.8: /usr/lib/python2.7/site-packages์ 16.8
pyparsing: /usr/lib/python2.7/site-packages์ 2.2.0
6: /usr/lib/python2.7/site-packages์ 1.10.0
Six>=1.6.0: /usr/lib/python2.7/site-packages์ 1.10.0
appdirs>=1.4.0: /usr/lib/python2.7/site-packages์ 1.4.3
ํ ๋ค์ด๋>=3.2: /usr/lib/python2.7/site-packages์ 4.4.2
singledispatch: /usr/lib/python2.7/site-packages์ 3.4.0.3
6: /usr/lib/python2.7/site-packages์ 1.10.0
backports_abc>=0.4: /usr/lib/python2.7/site-packages์ 0.5
Pykka>=1.1: /usr/lib/python2.7/site-packages์ 1.2.0
uritools>=1.0: /usr/lib/python2.7/site-packages์ 1.0.1
ipaddress>=1.0.6: /usr/lib/python2.7/site-packages์ 1.0.18
ipaddress>=1.0.6: /usr/lib/python2.7/site-packages์ 1.0.18
Mopidy-Qsaver: /usr/lib/python2.7/site-packages์ 0.1.0
setuptools: /usr/lib/python2.7/site-packages์ 34.3.2
ํจํค์ง>=16.8: /usr/lib/python2.7/site-packages์ 16.8
pyparsing: /usr/lib/python2.7/site-packages์ 2.2.0
6: /usr/lib/python2.7/site-packages์ 1.10.0
Six>=1.6.0: /usr/lib/python2.7/site-packages์ 1.10.0
appdirs>=1.4.0: /usr/lib/python2.7/site-packages์ 1.4.3
Mopidy>=1.0: /usr/lib/python2.7/site-packages์ 2.1.0
Pykka>=1.1: /usr/lib/python2.7/site-packages์ 1.2.0
์์ฒญ>=2.0: /usr/lib/python2.7/site-packages์ 2.13.0
setuptools: /usr/lib/python2.7/site-packages์ 34.3.2
ํจํค์ง>=16.8: /usr/lib/python2.7/site-packages์ 16.8
pyparsing: /usr/lib/python2.7/site-packages์ 2.2.0
6: /usr/lib/python2.7/site-packages์ 1.10.0
Six>=1.6.0: /usr/lib/python2.7/site-packages์ 1.10.0
appdirs>=1.4.0: /usr/lib/python2.7/site-packages์ 1.4.3
ํ ๋ค์ด๋>=3.2: /usr/lib/python2.7/site-packages์ 4.4.2
singledispatch: /usr/lib/python2.7/site-packages์ 3.4.0.3
6: /usr/lib/python2.7/site-packages์ 1.10.0
backports_abc>=0.4: /usr/lib/python2.7/site-packages์ 0.5
Pykka>=1.1: /usr/lib/python2.7/site-packages์ 1.2.0
Mopidy-Spotify: /usr/lib/python2.7/site-packages์ 3.0.0
Mopidy>=2.0: /usr/lib/python2.7/site-packages์ 2.1.0
Pykka>=1.1: /usr/lib/python2.7/site-packages์ 1.2.0
์์ฒญ>=2.0: /usr/lib/python2.7/site-packages์ 2.13.0
setuptools: /usr/lib/python2.7/site-packages์ 34.3.2
ํจํค์ง>=16.8: /usr/lib/python2.7/site-packages์ 16.8
pyparsing: /usr/lib/python2.7/site-packages์ 2.2.0
6: /usr/lib/python2.7/site-packages์ 1.10.0
Six>=1.6.0: /usr/lib/python2.7/site-packages์ 1.10.0
appdirs>=1.4.0: /usr/lib/python2.7/site-packages์ 1.4.3
ํ ๋ค์ด๋>=3.2: /usr/lib/python2.7/site-packages์ 4.4.2
singledispatch: /usr/lib/python2.7/site-packages์ 3.4.0.3
6: /usr/lib/python2.7/site-packages์ 1.10.0
backports_abc>=0.4: /usr/lib/python2.7/site-packages์์ 0.5
Pykka>=1.1: /usr/lib/python2.7/site-packages์ 1.2.0
pyspotify>=2.0.5: /usr/lib/python2.7/site-packages์ 2.0.5
cffi>=1.0.0: /usr/lib/python2.7/site-packages์ 1.9.1
pycparser: /usr/lib/python2.7/site-packages์ 2.17
์์ฒญ>=2.0: /usr/lib/python2.7/site-packages์ 2.13.0
setuptools: /usr/lib/python2.7/site-packages์ 34.3.2
ํจํค์ง>=16.8: /usr/lib/python2.7/site-packages์ 16.8
pyparsing: /usr/lib/python2.7/site-packages์ 2.2.0
6: /usr/lib/python2.7/site-packages์ 1.10.0
Six>=1.6.0: /usr/lib/python2.7/site-packages์ 1.10.0
appdirs>=1.4.0: /usr/lib/python2.7/site-packages์ 1.4.3
GStreamer: /usr/lib/python2.7/site-packages/gi์ 1.10.4.0
์์ธํ ์ ๋ณด:
ํ์ด์ฌ ๋ํผ: python-gi 3.22.0
๊ด๋ จ ์์:
์ค๋ฆฝํ๋ค:
uridecodebin
์ํhttpsrc
์ฑ์คRC
์์ฌ์ฑํฌ
์ค์ฑํฌ
oss4sink
ํ์ค ์ฑํฌ
id3demux
id3v2mux
lamemp3enc
๋ฏธ์น
mpegaudioparse
mpg123์ค๋์ค๋ฑ
๋ณด๋น์ค๋ฑ
๋ณด๋น์ผ
์์ฉ๋์ด
์ค๊ทธ๋ฐ๋จน์ค
์ค๊ทธ๋จน์ค
์ค๊ทธํ์ค
ํ๋๋ฑ
ํ๋ํ์ค
์๋ฆฌ 2 ๋ณด๋ด๊ธฐ
์ฐพ์ ์ ์์:
ํ๋ผํ3๋ฑ
-๋จ์ ์ด๋ฆ.
์ฌ๊ธฐ์์ ์ฌํํ๋ ๋จ๊ณ:
๋๋ ๊ทธ๊ฒ์ ์๋ํ๊ณ ์ฌํ ํ Spotify๊ฐ ์์ต๋๋ค.
ํ์ฌ ๋ฐ๋น์ ํจํค์ง๋ก ์ฌํํ ์ ์๋์ง ํ์ธํ๋ ค๊ณ ํฉ๋๋ค.
mopidy.deps.txt
mopidy.conf.txt
ํธ์ง: debian/stretch ํจํค์ง๋ก๋ ํ์ธ๋จ
# lsof -p $(pgrep mopidy)|grep mp3
mopidy 6856 mopidy 19r REG 253,1 3700844 15990956 /data/media/mp3/Archive/Londinium/02 - All Time.mp3
mopidy 6856 mopidy 20r REG 253,1 3700844 15990956 /data/media/mp3/Archive/Londinium/02 - All Time.mp3
๋์ผํ ํธ๋์ ๋ํ ๋ ๊ฐ์ ํ์ผ ํธ๋ค
ํธ์ง 2:
# lsof -p $(pgrep mopidy)|grep mp3
mopidy 6856 mopidy 19r REG 253,1 5953883 15990957 /data/media/mp3/Archive/Londinium/03 - So Few Words.mp3
# lsof -p $(pgrep mopidy)|grep mp3
mopidy 6856 mopidy 19r REG 253,1 5953883 15990957 /data/media/mp3/Archive/Londinium/03 - So Few Words.mp3
mopidy 6856 mopidy 22r REG 253,1 4051133 15990958 /data/media/mp3/Archive/Londinium/04 - Headspace.mp3
# lsof -p $(pgrep mopidy)|grep mp3
mopidy 6856 mopidy 19r REG 253,1 4051133 15990958 /data/media/mp3/Archive/Londinium/04 - Headspace.mp3
mopidy 6856 mopidy 22r REG 253,1 4051133 15990958 /data/media/mp3/Archive/Londinium/04 - Headspace.mp3
๋๋ ์ฝ๋๋ฅผ ๋ณด์ง ์์์ง๋ง ๊ฝค ์ข์ ํํธ๋ฅผ ์ค ๊ฒ์ด๋ผ๊ณ ํ์ ํฉ๋๋ค ;-)
๋๋ ํ๋์ ๊ฐ์ ํ๋์ ๋ณด์์๋ค.
์ฌ์ฉ์ ์ ์ ์ปจํ ์ด๋๋ฅผ ์ฌ์ฉ
INFO 2017-03-26 08:46:07,205 [1:MpdSession-33] mopidy.mpd.session
New MPD connection from [::ffff:172.18.0.1]:35692
DEBUG 2017-03-26 08:46:07,208 [1:MpdSession-33] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35692: next
DEBUG 2017-03-26 08:46:07,212 [1:MainThread] mopidy.audio.gst
Got STATE_CHANGED bus message: old=GST_STATE_PLAYING new=GST_STATE_PAUSED pending=GST_STATE_READY
DEBUG 2017-03-26 08:46:07,215 [1:Audio-2] mopidy.audio.gst
Changing state to GST_STATE_READY: result=GST_STATE_CHANGE_SUCCESS
DEBUG 2017-03-26 08:46:07,216 [1:SpotifyBackend-6] mopidy_spotify.playback
Audio requested change of track; loading and starting Spotify player
DEBUG 2017-03-26 08:46:07,221 [1:MainThread] mopidy.audio.gst
Got STATE_CHANGED bus message: old=GST_STATE_PAUSED new=GST_STATE_READY pending=GST_STATE_VOID_PENDING
DEBUG 2017-03-26 08:46:07,224 [1:Audio-2] mopidy.audio.gst
Sending TAG event for track 'spotify:track:3n52npc7FPjG4dBZcgLjmD': 'taglist, artist=(string)Silverstein, title=(string)"My\\ Heroine\\ -\\ Acoustic", album=(string)"18\\ Candles:\\ The\\ Early\\ Years";'
DEBUG 2017-03-26 08:46:07,226 [1:Audio-2] mopidy.audio.gst
Got source-setup signal: element=__main__.GstAppSrc
DEBUG 2017-03-26 08:46:07,228 [1:Audio-2] mopidy.audio.gst
Changing state to GST_STATE_PLAYING: result=GST_STATE_CHANGE_ASYNC
DEBUG 2017-03-26 08:46:07,229 [1:SpotifyBackend-6] mopidy_spotify.playback
Audio requested seek to 0
DEBUG 2017-03-26 08:46:07,233 [1:SpotifyBackend-6] mopidy_spotify.playback
Skipping seek due to issue mopidy/mopidy#300
DEBUG 2017-03-26 08:46:07,233 [1:MpdSession-33] mopidy.mpd.session
Response to [::ffff:172.18.0.1]:35692: OK
DEBUG 2017-03-26 08:46:07,235 [1:MpdSession-33] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35692: command_list_ok_begin
DEBUG 2017-03-26 08:46:07,237 [1:MpdSession-33] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35692: status
DEBUG 2017-03-26 08:46:07,238 [1:MpdSession-33] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35692: currentsong
DEBUG 2017-03-26 08:46:07,240 [1:MpdSession-33] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35692: command_list_end
DEBUG 2017-03-26 08:46:07,248 [1:Audio-2] mopidy.audio.actor
Position query failed
DEBUG 2017-03-26 08:46:07,257 [1:MpdSession-33] mopidy.mpd.session
Response to [::ffff:172.18.0.1]:35692:
volume: 100
repeat: 1
random: 0
single: 0
consume: 0
playlist: 5
playlistlength: 5
xfade: 0
state: play
song: 2
songid: 3
nextsong: 3
nextsongid: 4
time: 0:212
elapsed: 0.000
bitrate: 160
list_OK
file: spotify:track:5W12R96LKHS0MxBjs6TQep
Time: 212
Artist: Silverstein
Album: Ghost
Title: Ghost
Date: 2016
Track: 1
Pos: 2
Id: 3
AlbumArtist: Silverstein
X-AlbumUri: spotify:album:1EZDUjQkJy65ecY1DZDstN
list_OK
OK
DEBUG 2017-03-26 08:46:07,260 [1:MpdSession-33] mopidy.internal.network
Client most likely disconnected.
DEBUG 2017-03-26 08:46:07,262 [1:MpdSession-33] mopidy.internal.network
Already stopping: Actor is shutting down.
DEBUG 2017-03-26 08:46:07,706 [1:Dummy-17] mopidy.audio.gst
Got SEGMENT pad event: rate=1.0 format=time start=0 stop=18446744073709551615 position=0
DEBUG 2017-03-26 08:46:07,707 [1:Dummy-17] mopidy.audio.actor
Audio event: position_changed(position=0L)
DEBUG 2017-03-26 08:46:07,708 [1:Dummy-17] mopidy.listener
Sending position_changed to AudioListener: {'position': 0L}
DEBUG 2017-03-26 08:46:07,904 [1:MainThread] mopidy.audio.gst
Got STREAM_START bus message
DEBUG 2017-03-26 08:46:07,904 [1:MainThread] mopidy.audio.actor
Audio event: stream_changed(uri=u'appsrc://')
DEBUG 2017-03-26 08:46:07,905 [1:MainThread] mopidy.listener
Sending stream_changed to AudioListener: {'uri': u'appsrc://'}
DEBUG 2017-03-26 08:46:07,908 [1:Core-8] mopidy.core.playback
Triggering track playback ended event
DEBUG 2017-03-26 08:46:07,910 [1:Core-8] mopidy.listener
Sending track_playback_ended to CoreListener: {'time_position': 468981L, 'tl_track': TlTrack(tlid=3, track=Track(album=Album(artists=[Artist(name=u'Silverstein', uri='spotify:artist:1Tsag5J854qxeOo2apszug')], date=u'2016', name=u'Ghost', uri='spotify:album:1EZDUjQkJy65ecY1DZDstN'), artists=[Artist(name=u'Silverstein', uri='spotify:artist:1Tsag5J854qxeOo2apszug')], bitrate=160, date=u'2016', disc_no=0, length=212000, name=u'Ghost', track_no=1, uri='spotify:track:5W12R96LKHS0MxBjs6TQep'))}
DEBUG 2017-03-26 08:46:07,914 [1:Core-8] mopidy.core.playback
Changing state: playing -> playing
DEBUG 2017-03-26 08:46:07,915 [1:Core-8] mopidy.core.playback
Triggering playback state change event
DEBUG 2017-03-26 08:46:07,917 [1:Core-8] mopidy.listener
Sending playback_state_changed to CoreListener: {'old_state': u'playing', 'new_state': u'playing'}
DEBUG 2017-03-26 08:46:07,918 [1:MpdFrontend-11] mopidy.listener
Sending player to MpdSession: {}
DEBUG 2017-03-26 08:46:07,920 [1:Core-8] mopidy.core.playback
Triggering track playback started event
DEBUG 2017-03-26 08:46:07,922 [1:Core-8] mopidy.listener
Sending track_playback_started to CoreListener: {'tl_track': TlTrack(tlid=5, track=Track(album=Album(artists=[Artist(name=u'Silverstein', uri='spotify:artist:1Tsag5J854qxeOo2apszug')], date=u'2006', name=u'18 Candles: The Early Years', uri='spotify:album:5wwo3iPJ93pElRfHs97bea'), artists=[Artist(name=u'Silverstein', uri='spotify:artist:1Tsag5J854qxeOo2apszug')], bitrate=160, date=u'2006', disc_no=0, length=214000, name=u'My Heroine - Acoustic', track_no=13, uri='spotify:track:3n52npc7FPjG4dBZcgLjmD'))}
DEBUG 2017-03-26 08:46:07,926 [1:MainThread] mopidy.audio.gst
Got STATE_CHANGED bus message: old=GST_STATE_READY new=GST_STATE_PAUSED pending=GST_STATE_PLAYING
DEBUG 2017-03-26 08:46:07,928 [1:MainThread] mopidy.audio.gst
Got ASYNC_DONE bus message.
DEBUG 2017-03-26 08:46:07,935 [1:MainThread] mopidy.audio.gst
Got STATE_CHANGED bus message: old=GST_STATE_PAUSED new=GST_STATE_PLAYING pending=GST_STATE_VOID_PENDING
DEBUG 2017-03-26 08:46:07,938 [1:MainThread] mopidy.audio.actor
Audio event: state_changed(old_state=playing, new_state=playing, target_state=None)
DEBUG 2017-03-26 08:46:07,940 [1:MainThread] mopidy.listener
Sending state_changed to AudioListener: {'old_state': u'playing', 'target_state': None, 'new_state': u'playing'}
DEBUG 2017-03-26 08:46:08,230 [1:MainThread] mopidy.audio.gst
Got TAG bus message: tags={'album': [u'18 Candles: The Early Years'], 'artist': [u'Silverstein'], 'title': [u'My Heroine - Acoustic']}
DEBUG 2017-03-26 08:46:08,231 [1:MainThread] mopidy.audio.actor
Audio event: tags_changed(tags=['album', 'title', 'artist'])
DEBUG 2017-03-26 08:46:08,232 [1:MainThread] mopidy.listener
Sending tags_changed to AudioListener: {'tags': ['album', 'title', 'artist']}
์ด์ ํธ๋์ด ๋๋๋ฉด ๋ค์ ํธ๋์ผ๋ก ํ๋ณตํ๊ฒ ์ด๋ํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๋ ๋ค์๊ณผ ๊ฐ์ ์ผ๋ จ์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํฉ๋๋ค.
DEBUG 2017-03-26 08:49:34,022 [1:SpotifyEventLoop] mopidy_spotify.playback
End of track reached
DEBUG 2017-03-26 08:49:34,022 [1:Audio-2] mopidy.audio.gst
Sending appsrc end-of-stream event.
DEBUG 2017-03-26 08:49:34,310 [1:SpotifyEventLoop] mopidy_spotify.playback
End of track already received; ignoring callback
DEBUG 2017-03-26 08:49:38,743 [1:Dummy-27] mopidy.audio.gst
Got about-to-finish event.
DEBUG 2017-03-26 08:49:38,743 [1:Dummy-27] mopidy.audio.actor
Running about-to-finish callback.
DEBUG 2017-03-26 08:49:38,744 [1:SpotifyBackend-6] mopidy_spotify.playback
Audio requested change of track; loading and starting Spotify player
DEBUG 2017-03-26 08:49:38,746 [1:Audio-2] mopidy.audio.gst
Sending TAG event for track 'spotify:track:5U2p81vdlp2saDTIvk0Lnb': 'taglist, artist=(string)Silverstein, title=(string)"My\\ Heroine", album=(string)"Discovering\\ the\\ Waterfront";'
DEBUG 2017-03-26 08:49:38,748 [1:Dummy-27] mopidy.audio.gst
Got source-setup signal: element=__main__.GstAppSrc
DEBUG 2017-03-26 08:49:38,751 [1:SpotifyBackend-6] mopidy_spotify.playback
Audio requested seek to 0
DEBUG 2017-03-26 08:49:38,752 [1:SpotifyBackend-6] mopidy_spotify.playback
Skipping seek due to issue mopidy/mopidy#300
DEBUG 2017-03-26 08:49:40,880 [1:Dummy-17] mopidy.audio.gst
Got SEGMENT pad event: rate=1.0 format=time start=0 stop=18446744073709551615 position=0
DEBUG 2017-03-26 08:49:40,881 [1:Dummy-17] mopidy.audio.actor
Audio event: position_changed(position=0L)
DEBUG 2017-03-26 08:49:40,881 [1:Dummy-17] mopidy.listener
Sending position_changed to AudioListener: {'position': 0L}
๊ทธ๋ฌ๋ ์ด ์์ ์ด ๋๋๋ฉด ํธ๋์ด ๋ค์ ์์๋ฉ๋๋ค.
DEBUG 2017-03-26 08:53:02,619 [1:SpotifyEventLoop] mopidy_spotify.playback
End of track reached
DEBUG 2017-03-26 08:53:02,620 [1:Audio-2] mopidy.audio.gst
Sending appsrc end-of-stream event.
DEBUG 2017-03-26 08:53:02,810 [1:SpotifyEventLoop] mopidy_spotify.playback
End of track already received; ignoring callback
DEBUG 2017-03-26 08:53:06,840 [1:Dummy-31] mopidy.audio.gst
Got about-to-finish event.
DEBUG 2017-03-26 08:53:06,840 [1:Dummy-31] mopidy.audio.actor
Running about-to-finish callback.
DEBUG 2017-03-26 08:53:06,842 [1:SpotifyBackend-6] mopidy_spotify.playback
Audio requested change of track; loading and starting Spotify player
DEBUG 2017-03-26 08:53:06,843 [1:Audio-2] mopidy.audio.gst
Sending TAG event for track 'spotify:track:5U2p81vdlp2saDTIvk0Lnb': 'taglist, artist=(string)Silverstein, title=(string)"My\\ Heroine", album=(string)"Discovering\\ the\\ Waterfront";'
DEBUG 2017-03-26 08:53:06,844 [1:Dummy-31] mopidy.audio.gst
Got source-setup signal: element=__main__.GstAppSrc
DEBUG 2017-03-26 08:53:06,847 [1:SpotifyBackend-6] mopidy_spotify.playback
Audio requested seek to 0
DEBUG 2017-03-26 08:53:06,849 [1:SpotifyBackend-6] mopidy_spotify.playback
Skipping seek due to issue mopidy/mopidy#300
DEBUG 2017-03-26 08:53:08,975 [1:Dummy-17] mopidy.audio.gst
Got SEGMENT pad event: rate=1.0 format=time start=0 stop=18446744073709551615 position=0
DEBUG 2017-03-26 08:53:08,975 [1:Dummy-17] mopidy.audio.actor
Audio event: position_changed(position=0L)
DEBUG 2017-03-26 08:53:08,976 [1:Dummy-17] mopidy.listener
Sending position_changed to AudioListener: {'position': 0L}
์ฌ๊ธฐ์์ ํด๋ผ์ด์ธํธ๋ก ์ํ๋ฅผ ์ฟผ๋ฆฌํ๋ฉด Mopidy๊ฐ ์ฒซ ๋ฒ์งธ ์์์ ์ฐ๋ฆฌ๊ฐ ์ฌ์ ํ ๊ถค๋์ ์๋ค๊ณ ์๊ฐํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ ๋๋ค.
INFO 2017-03-26 08:55:15,437 [1:MpdSession-34] mopidy.mpd.session
New MPD connection from [::ffff:172.18.0.1]:35696
DEBUG 2017-03-26 08:55:15,439 [1:MpdSession-34] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35696: command_list_ok_begin
DEBUG 2017-03-26 08:55:15,440 [1:MpdSession-34] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35696: status
DEBUG 2017-03-26 08:55:15,441 [1:MpdSession-34] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35696: currentsong
DEBUG 2017-03-26 08:55:15,442 [1:MpdSession-34] mopidy.mpd.session
Request from [::ffff:172.18.0.1]:35696: command_list_end
DEBUG 2017-03-26 08:55:15,449 [1:MpdSession-34] mopidy.mpd.session
Response to [::ffff:172.18.0.1]:35696:
volume: 100
repeat: 1
random: 0
single: 0
consume: 0
playlist: 5
playlistlength: 5
xfade: 0
state: play
song: 4
songid: 5
nextsong: 0
nextsongid: 1
time: 547:214
elapsed: 547.989
bitrate: 160
list_OK
file: spotify:track:3n52npc7FPjG4dBZcgLjmD
Time: 214
Artist: Silverstein
Album: 18 Candles: The Early Years
Title: My Heroine - Acoustic
Date: 2006
Track: 13
Pos: 4
Id: 5
AlbumArtist: Silverstein
X-AlbumUri: spotify:album:5wwo3iPJ93pElRfHs97bea
list_OK
OK
DEBUG 2017-03-26 08:55:15,451 [1:MpdSession-34] mopidy.internal.network
Client most likely disconnected.
DEBUG 2017-03-26 08:55:15,453 [1:MpdSession-34] mopidy.internal.network
Already stopping: Actor is shutting down.
์ฌ๊ธฐ์ ๋์ ๋๋ ๊ฒ์ ์์๋๋ก ์๋ํ๋ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ๋ค๋ ๊ฒ์ ๋๋ค.
DEBUG 2017-03-26 08:46:07,224 [1:Audio-2] mopidy.audio.gst
Sending TAG event for track 'spotify:track:3n52npc7FPjG4dBZcgLjmD': 'taglist, artist=(string)Silverstein, title=(string)"My\\ Heroine\\ -\\ Acoustic", album=(string)"18\\ Candles:\\ The\\ Early\\ Years";'
[...]
DEBUG 2017-03-26 08:46:08,230 [1:MainThread] mopidy.audio.gst
Got TAG bus message: tags={'album': [u'18 Candles: The Early Years'], 'artist': [u'Silverstein'], 'title': [u'My Heroine - Acoustic']}
๊ทธ๋ฌ๋ ์์๋๋ก ์๋ํ์ง ์๋ ๊ฒฝ์ฐ "Sending TAG ์ด๋ฒคํธ" ๋ฉ์์ง๋ง ํ์๋ฉ๋๋ค.
์ธ๊ธํ์ง ์์์ง๋ง ํญ์ ๋ฌด์์๋ก ๋ฐ๋ณตํฉ๋๋ค. ๋ฐ๋ณต์ ๋ฌธ์ ๊ฐ ์์ ์ ์์ต๋๋ค. ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ํ
์คํธํ๊ณ ์์๋ด๊ฒ ์ต๋๋ค.
๋จ์ ์ด๋ฆ.
๋ด iPhone์์ ๋ณด๋ธ
2017๋
3์ 26์ผ ์ค์ 4:07 Daniel White
๋๋ ํ๋์ ๊ฐ์ ํ๋์ ๋ณด์์๋ค.
์ฌ์ฉ์ ์ ์ ์ปจํ
์ด๋ ์ฌ์ฉ https://gist.github.com/danielwhite/5fc9f0a401e8beb9e2ad6ef463650cfa ,
5๊ฐ ํญ๋ชฉ์ ์ฌ์ ๋ชฉ๋ก์ด ์์ต๋๋ค. 4๋ฒ ํธ๋์์ ๊ฑด๋๋ฐ๋ฉด
ํธ๋ 5(๋ฐ๋ณต ์ผ์ง)์์ ๋ค์๊ณผ ๊ฐ์ ์ผ๋ จ์ ์ด๋ฒคํธ๊ฐ ํ์๋ฉ๋๋ค.
INFO 2017-03-26 08:46:07,205 [1:MpdSession-33] mopidy.mpd.session
[::ffff:172.18.0.1]:35692์์ ์ MPD ์ฐ๊ฒฐ
๋๋ฒ๊ทธ 2017-03-26 08:46:07,208 [1:MpdSession-33] mopidy.mpd.session
[::ffff:172.18.0.1]:35692์์ ์์ฒญ: ๋ค์
๋๋ฒ๊ทธ 2017-03-26 08:46:07,212 [1:MainThread] mopidy.audio.gst
STATE_CHANGED ๋ฒ์ค ๋ฉ์์ง ์์ : old=GST_STATE_PLAYING new=GST_STATE_PAUSED ๋ณด๋ฅ ์ค=GST_STATE_READY
DEBUG 2017-03-26 08:46:07,215 [1:์ค๋์ค-2] mopidy.audio.gst
์ํ๋ฅผ GST_STATE_READY๋ก ๋ณ๊ฒฝ: result=GST_STATE_CHANGE_SUCCESS
๋๋ฒ๊ทธ 2017-03-26 08:46:07,216 [1:SpotifyBackend-6] mopidy_spotify.playback
์ค๋์ค ์์ฒญ ํธ๋ ๋ณ๊ฒฝ Spotify ํ๋ ์ด์ด ๋ก๋ ๋ฐ ์์
๋๋ฒ๊ทธ 2017-03-26 08:46:07,221 [1:MainThread] mopidy.audio.gst
STATE_CHANGED ๋ฒ์ค ๋ฉ์์ง ์์ : old=GST_STATE_PAUSED new=GST_STATE_READY ๋ณด๋ฅ ์ค=GST_STATE_VOID_PENDING
๋๋ฒ๊ทธ 2017-03-26 08:46:07,224 [1:์ค๋์ค-2] mopidy.audio.gst
'spotify:track:3n52npc7FPjG4dBZcgLjmD' ํธ๋์ ๋ํ TAG ์ด๋ฒคํธ ๋ณด๋ด๊ธฐ: 'taglist, Artist=(string)Silverstein, title=(string)"My\ Heroine\ -\ Acoustic", Album=(string)"18\ Candles:\ The \ ์ด๊ธฐ";'
๋๋ฒ๊ทธ 2017-03-26 08:46:07,226 [1:์ค๋์ค-2] mopidy.audio.gst
์์ค ์ค์ ์ ํธ๊ฐ ์์: element=__main__.GstAppSrc
๋๋ฒ๊ทธ 2017-03-26 08:46:07,228 [1:์ค๋์ค-2] mopidy.audio.gst
์ํ๋ฅผ GST_STATE_PLAYING์ผ๋ก ๋ณ๊ฒฝ: result=GST_STATE_CHANGE_ASYNC
๋๋ฒ๊ทธ 2017-03-26 08:46:07,229 [1:SpotifyBackend-6] mopidy_spotify.playback
์ค๋์ค ์์ฒญ 0
๋๋ฒ๊ทธ 2017-03-26 08:46:07,233 [1:SpotifyBackend-6] mopidy_spotify.playback
mopidy/mopidy#300 ๋ฌธ์ ๋ก ์ธํด ํ์ ๊ฑด๋๋ฐ๊ธฐ
๋๋ฒ๊ทธ 2017-03-26 08:46:07,233 [1:MpdSession-33] mopidy.mpd.session
[::ffff:172.18.0.1]:35692์ ๋ํ ์๋ต: ํ์ธ
๋๋ฒ๊ทธ 2017-03-26 08:46:07,235 [1:MpdSession-33] mopidy.mpd.session
[::ffff:172.18.0.1]:35692์ ์์ฒญ: command_list_ok_begin
๋๋ฒ๊ทธ 2017-03-26 08:46:07,237 [1:MpdSession-33] mopidy.mpd.session
[::ffff:172.18.0.1]:35692์ ์์ฒญ: ์ํ
๋๋ฒ๊ทธ 2017-03-26 08:46:07,238 [1:MpdSession-33] mopidy.mpd.session
[::ffff:172.18.0.1]:35692: currentsong์ ์์ฒญ
๋๋ฒ๊ทธ 2017-03-26 08:46:07,240 [1:MpdSession-33] mopidy.mpd.session
[::ffff:172.18.0.1]:35692์ ์์ฒญ: command_list_end
DEBUG 2017-03-26 08:46:07,248 [1:Audio-2] mopidy.audio.actor
์์น ์ฟผ๋ฆฌ ์คํจ
๋๋ฒ๊ทธ 2017-03-26 08:46:07,257 [1:MpdSession-33] mopidy.mpd.session
[::ffff:172.18.0.1]:35692์ ๋ํ ์๋ต:
๋ณผ๋ฅจ: 100
๋ฐ๋ณต: 1
๋ฌด์์: 0
์ฑ๊ธ: 0
์๋น: 0
์ฌ์ ๋ชฉ๋ก: 5
์ฌ์ ๋ชฉ๋ก ๊ธธ์ด: 5
์์คํ์ด๋: 0
์ํ: ์ฌ์
๋
ธ๋: 2
์ก์ง๋: 3
๋ค์๊ณก: 3
๋ฅ์คํธ์ก์ง๋: 4
์๊ฐ: 0:212
๊ฒฝ๊ณผ: 0.000
๋นํธ๋ ์ดํธ: 160
list_OK
ํ์ผ: ์คํฌํฐํ์ด:ํธ๋:5W12R96LKHS0MxBjs6TQep
์๊ฐ: 212
์ํฐ์คํธ: Silverstein
์จ๋ฒ: ์ ๋ น
์ ๋ชฉ: ์ ๋ น
๋ ์ง: 2016
ํธ๋: 1
์์น: 2
์์ด๋: 3
์จ๋ฒ์ํฐ์คํธ: Silverstein
X-AlbumUri: ์คํฌํฐํ์ด:์จ๋ฒ:1EZDUjQkJy65ecY1DZDstN
list_OK
์ข์์
๋๋ฒ๊ทธ 2017-03-26 08:46:07,260 [1:MpdSession-33] mopidy.internal.network
ํด๋ผ์ด์ธํธ์ ์ฐ๊ฒฐ์ด ๋๊ฒผ์ ๊ฐ๋ฅ์ฑ์ด ํฝ๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:46:07,262 [1:MpdSession-33] mopidy.internal.network
์ด๋ฏธ ์ค์ง ์ค: Actor๊ฐ ์ข
๋ฃ ์ค์
๋๋ค.
DEBUG 2017-03-26 08:46:07,706 [1:Dummy-17] mopidy.audio.gst
SEGMENT ํจ๋ ์ด๋ฒคํธ ๋ฐ์: rate=1.0 format=time start=0 stop=18446744073709551615 position=0
DEBUG 2017-03-26 08:46:07,707 [1:Dummy-17] mopidy.audio.actor
์ค๋์ค ์ด๋ฒคํธ: position_changed(position=0L)
DEBUG 2017-03-26 08:46:07,708 [1:Dummy-17] mopidy.listener
AudioListener์ position_changed ๋ณด๋ด๊ธฐ: {'position': 0L}
๋๋ฒ๊ทธ 2017-03-26 08:46:07,904 [1:MainThread] mopidy.audio.gst
STREAM_START ๋ฒ์ค ๋ฉ์์ง๋ฅผ ๋ฐ์์ต๋๋ค.
DEBUG 2017-03-26 08:46:07,904 [1:MainThread] mopidy.audio.actor
์ค๋์ค ์ด๋ฒคํธ: stream_changed(uri=u'appsrc://')
DEBUG 2017-03-26 08:46:07,905 [1:MainThread] mopidy.listener
stream_changed๋ฅผ AudioListener๋ก ๋ณด๋ด๊ธฐ: {'uri': u'appsrc://'}
๋๋ฒ๊ทธ 2017-03-26 08:46:07,908 [1:Core-8] mopidy.core.playback
ํธ๋ ์ฌ์ ์ข
๋ฃ ์ด๋ฒคํธ ํธ๋ฆฌ๊ฑฐ
DEBUG 2017-03-26 08:46:07,910 [1:Core-8] mopidy.listener
CoreListener์ track_playback_ended ๋ณด๋ด๊ธฐ: {'time_position': 468981L, 'tl_track': TlTrack(tlid=3, track=Track(album=Album(artists=[Artist(name=u'Silverstein', uri='spotify:artist:1Tsag5J854qxeO)) ')], date=u'2016', name=u'Ghost', uri='spotify:album:1EZDUjQkJy65ecY1DZDstN'), Artists=[Artist(name=u'Silverstein', uri='spotify:artist:1Tsag5J854qxeOo2) )], ๋นํธ ์ ์ก๋ฅ =160, ๋ ์ง=u'2016', disk_no=0, ๊ธธ์ด=212000, ์ด๋ฆ=u'Ghost', track_no=1, uri='spotify:track:5W12R96LKHS0MxBjs6TQep'))}
๋๋ฒ๊ทธ 2017-03-26 08:46:07,914 [1:Core-8] mopidy.core.playback
์ํ ๋ณ๊ฒฝ: ์ฌ์ ์ค -> ์ฌ์ ์ค
๋๋ฒ๊ทธ 2017-03-26 08:46:07,915 [1:Core-8] mopidy.core.playback
์ฌ์ ์ํ ๋ณ๊ฒฝ ์ด๋ฒคํธ ํธ๋ฆฌ๊ฑฐ
DEBUG 2017-03-26 08:46:07,917 [1:Core-8] mopidy.listener
Playback_state_changed๋ฅผ CoreListener: {'old_state': u'playing', 'new_state': u'playing'}๋ก ๋ณด๋ด๊ธฐ
๋๋ฒ๊ทธ 2017-03-26 08:46:07,918 [1:MpdFrontend-11] mopidy.listener
ํ๋ ์ด์ด๋ฅผ MpdSession์ผ๋ก ๋ณด๋ด๊ธฐ: {}
๋๋ฒ๊ทธ 2017-03-26 08:46:07,920 [1:Core-8] mopidy.core.playback
ํธ๋ ์ฌ์ ์์ ์ด๋ฒคํธ ํธ๋ฆฌ๊ฑฐ
DEBUG 2017-03-26 08:46:07,922 [1:Core-8] mopidy.listener
CoreListener์ track_playback_started ๋ณด๋ด๊ธฐ: {'tl_track': TlTrack(tlid=5, track=Track(album=Album(artists=[Artist(name=u'Silverstein', uri='spotify:artist:1Tsag5J854qxeOo2apszug'))], ๋ ์ง= u'2006', name=u'18 Candles: The Early Years', uri='spotify:album:5wwo3iPJ93pElRfHs97bea'), Artists=[Artist(name=u'Silverstein', uri='spotify:artist:1Tsag5JO854qxe) ], bitrate=160, date=u'2006', disk_no=0, length=214000, name=u'My Heroine - Acoustic', track_no=13, uri='spotify:track:3n52npc7FPjG4dBZcgLjmD'))}
๋๋ฒ๊ทธ 2017-03-26 08:46:07,926 [1:MainThread] mopidy.audio.gst
STATE_CHANGED ๋ฒ์ค ๋ฉ์์ง ์์ : old=GST_STATE_READY new=GST_STATE_PAUSED ๋ณด๋ฅ=GST_STATE_PLAYING
๋๋ฒ๊ทธ 2017-03-26 08:46:07,928 [1:MainThread] mopidy.audio.gst
ASYNC_DONE ๋ฒ์ค ๋ฉ์์ง๋ฅผ ๋ฐ์์ต๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:46:07,935 [1:MainThread] mopidy.audio.gst
STATE_CHANGED ๋ฒ์ค ๋ฉ์์ง ์์ : old=GST_STATE_PAUSED new=GST_STATE_PLAYING ๋ณด๋ฅ ์ค=GST_STATE_VOID_PENDING
DEBUG 2017-03-26 08:46:07,938 [1:MainThread] mopidy.audio.actor
์ค๋์ค ์ด๋ฒคํธ: state_changed(old_state=playing, new_state=playing, target_state=None)
DEBUG 2017-03-26 08:46:07,940 [1:MainThread] mopidy.listener
state_changed๋ฅผ AudioListener๋ก ๋ณด๋ด๊ธฐ: {'old_state': u'playing', 'target_state': None, 'new_state': u'playing'}
๋๋ฒ๊ทธ 2017-03-26 08:46:08,230 [1:MainThread] mopidy.audio.gst
Get TAG ๋ฒ์ค ๋ฉ์์ง: tags={'album': [u'18 Candles: The Early Years'], 'artist': [u'Silverstein'], 'title': [u'My Heroine - Acoustic']}
DEBUG 2017-03-26 08:46:08,231 [1:MainThread] mopidy.audio.actor
์ค๋์ค ์ด๋ฒคํธ: tags_changed(tags=['์จ๋ฒ', '์ ๋ชฉ', '์ํฐ์คํธ'])
DEBUG 2017-03-26 08:46:08,232 [1:MainThread] mopidy.listener
AudioListener์ tags_changed ๋ณด๋ด๊ธฐ: {'tags': ['album', 'title', 'artist']}
์ด์ ํธ๋์ด ๋๋๋ฉด ๋ค์ ์๋ฆฌ์ฆ๋ฅผ ์ป์ต๋๋ค.
์ฆ๊ฒ๊ฒ ๋ค์ ํธ๋์ผ๋ก ๋์ด๊ฐ ๊ฒ ๊ฐ์ ์ด๋ฒคํธ.
๋๋ฒ๊ทธ 2017-03-26 08:49:34,022 [1:SpotifyEventLoop] mopidy_spotify.playback
ํธ๋ ๋์ ๋๋ฌํ์ต๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:49:34,022 [1:์ค๋์ค-2] mopidy.audio.gst
appsrc ์คํธ๋ฆผ ๋ ์ด๋ฒคํธ๋ฅผ ๋ณด๋ด๋ ์ค์
๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:49:34,310 [1:SpotifyEventLoop] mopidy_spotify.playback
ํธ๋์ ๋์ด ์ด๋ฏธ ์์ ๋์์ต๋๋ค. ์ฝ๋ฐฑ ๋ฌด์
DEBUG 2017-03-26 08:49:38,743 [1:Dummy-27] mopidy.audio.gst
์ด๋ฒคํธ ์ข
๋ฃ๋ฅผ ์๋๊ณ ์์ต๋๋ค.
DEBUG 2017-03-26 08:49:38,743 [1:Dummy-27] mopidy.audio.actor
์ข
๋ฃ ์ง์ ์ฝ๋ฐฑ์ ์คํ ์ค์
๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:49:38,744 [1:SpotifyBackend-6] mopidy_spotify.playback
์ค๋์ค ์์ฒญ ํธ๋ ๋ณ๊ฒฝ Spotify ํ๋ ์ด์ด ๋ก๋ ๋ฐ ์์
๋๋ฒ๊ทธ 2017-03-26 08:49:38,746 [1:์ค๋์ค-2] mopidy.audio.gst
'spotify:track:5U2p81vdlp2saDTIvk0Lnb' ํธ๋์ ๋ํ TAG ์ด๋ฒคํธ ๋ณด๋ด๊ธฐ: 'taglist, Artist=(string)Silverstein, title=(string)"My\ Heroine", album=(string)"Discovering\ the\ Waterfront";'
DEBUG 2017-03-26 08:49:38,748 [1:Dummy-27] mopidy.audio.gst
์์ค ์ค์ ์ ํธ๊ฐ ์์: element=__main__.GstAppSrc
๋๋ฒ๊ทธ 2017-03-26 08:49:38,751 [1:SpotifyBackend-6] mopidy_spotify.playback
์ค๋์ค ์์ฒญ 0
๋๋ฒ๊ทธ 2017-03-26 08:49:38,752 [1:SpotifyBackend-6] mopidy_spotify.playback
mopidy/mopidy#300 ๋ฌธ์ ๋ก ์ธํด ํ์ ๊ฑด๋๋ฐ๊ธฐ
DEBUG 2017-03-26 08:49:40,880 [1:Dummy-17] mopidy.audio.gst
SEGMENT ํจ๋ ์ด๋ฒคํธ ๋ฐ์: rate=1.0 format=time start=0 stop=18446744073709551615 position=0
DEBUG 2017-03-26 08:49:40,881 [1:Dummy-17] mopidy.audio.actor
์ค๋์ค ์ด๋ฒคํธ: position_changed(position=0L)
DEBUG 2017-03-26 08:49:40,881 [1:Dummy-17] mopidy.listener
AudioListener์ position_changed ๋ณด๋ด๊ธฐ: {'position': 0L}
๊ทธ๋ฌ๋ ์ด ์์ ์ด ๋๋๋ฉด ํธ๋์ด ๋ค์ ์์๋ฉ๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:53:02,619 [1:SpotifyEventLoop] mopidy_spotify.playback
ํธ๋ ๋์ ๋๋ฌํ์ต๋๋ค.
DEBUG 2017-03-26 08:53:02,620 [1:์ค๋์ค-2] mopidy.audio.gst
appsrc ์คํธ๋ฆผ ๋ ์ด๋ฒคํธ๋ฅผ ๋ณด๋ด๋ ์ค์
๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:53:02,810 [1:SpotifyEventLoop] mopidy_spotify.playback
ํธ๋์ ๋์ด ์ด๋ฏธ ์์ ๋์์ต๋๋ค. ์ฝ๋ฐฑ ๋ฌด์
DEBUG 2017-03-26 08:53:06,840 [1:Dummy-31] mopidy.audio.gst
์ด๋ฒคํธ ์ข
๋ฃ๋ฅผ ์๋๊ณ ์์ต๋๋ค.
DEBUG 2017-03-26 08:53:06,840 [1:Dummy-31] mopidy.audio.actor
์ข
๋ฃ ์ง์ ์ฝ๋ฐฑ์ ์คํ ์ค์
๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:53:06,842 [1:SpotifyBackend-6] mopidy_spotify.playback
์ค๋์ค ์์ฒญ ํธ๋ ๋ณ๊ฒฝ Spotify ํ๋ ์ด์ด ๋ก๋ ๋ฐ ์์
๋๋ฒ๊ทธ 2017-03-26 08:53:06,843 [1:์ค๋์ค-2] mopidy.audio.gst
'spotify:track:5U2p81vdlp2saDTIvk0Lnb' ํธ๋์ ๋ํ TAG ์ด๋ฒคํธ ๋ณด๋ด๊ธฐ: 'taglist, Artist=(string)Silverstein, title=(string)"My\ Heroine", album=(string)"Discovering\ the\ Waterfront";'
DEBUG 2017-03-26 08:53:06,844 [1:Dummy-31] mopidy.audio.gst
์์ค ์ค์ ์ ํธ๊ฐ ์์: element=__main__.GstAppSrc
๋๋ฒ๊ทธ 2017-03-26 08:53:06,847 [1:SpotifyBackend-6] mopidy_spotify.playback
์ค๋์ค ์์ฒญ 0
๋๋ฒ๊ทธ 2017-03-26 08:53:06,849 [1:SpotifyBackend-6] mopidy_spotify.playback
mopidy/mopidy#300 ๋ฌธ์ ๋ก ์ธํด ํ์ ๊ฑด๋๋ฐ๊ธฐ
DEBUG 2017-03-26 08:53:08,975 [1:Dummy-17] mopidy.audio.gst
SEGMENT ํจ๋ ์ด๋ฒคํธ ๋ฐ์: rate=1.0 format=time start=0 stop=18446744073709551615 position=0
DEBUG 2017-03-26 08:53:08,975 [1:Dummy-17] mopidy.audio.actor
์ค๋์ค ์ด๋ฒคํธ: position_changed(position=0L)
DEBUG 2017-03-26 08:53:08,976 [1:Dummy-17] mopidy.listener
AudioListener์ position_changed ๋ณด๋ด๊ธฐ: {'position': 0L}
์ฌ๊ธฐ์ ์ฃผ์ํ ์ ์ ํด๋ผ์ด์ธํธ๋ก ์ํ๋ฅผ ์ฟผ๋ฆฌํ๋ฉด
๊ทธ๋ฌ๋ฉด Mopidy๋ ์ฐ๋ฆฌ๊ฐ ์ฌ์ ํ
์ฒซ ๋ฒ์งธ ์:
INFO 2017-03-26 08:55:15,437 [1:MpdSession-34] mopidy.mpd.session
[::ffff:172.18.0.1]:35696์์ ์ MPD ์ฐ๊ฒฐ
๋๋ฒ๊ทธ 2017-03-26 08:55:15,439 [1:MpdSession-34] mopidy.mpd.session
[::ffff:172.18.0.1]:35696์ ์์ฒญ: command_list_ok_begin
๋๋ฒ๊ทธ 2017-03-26 08:55:15,440 [1:MpdSession-34] mopidy.mpd.session
[::ffff:172.18.0.1]:35696: ์ํ์์ ์์ฒญ
๋๋ฒ๊ทธ 2017-03-26 08:55:15,441 [1:MpdSession-34] mopidy.mpd.session
[::ffff:172.18.0.1]:35696: currentsong์ ์์ฒญ
๋๋ฒ๊ทธ 2017-03-26 08:55:15,442 [1:MpdSession-34] mopidy.mpd.session
[::ffff:172.18.0.1]:35696์ ์์ฒญ: command_list_end
๋๋ฒ๊ทธ 2017-03-26 08:55:15,449 [1:MpdSession-34] mopidy.mpd.session
[::ffff:172.18.0.1]:35696์ ๋ํ ์๋ต:
๋ณผ๋ฅจ: 100
๋ฐ๋ณต: 1
๋ฌด์์: 0
์ฑ๊ธ: 0
์๋น: 0
์ฌ์ ๋ชฉ๋ก: 5
์ฌ์ ๋ชฉ๋ก ๊ธธ์ด: 5
์์คํ์ด๋: 0
์ํ: ์ฌ์
๋
ธ๋: 4
์ก์ง๋: 5
๋ค์๊ณก: 0
๋ฅ์คํธ์ก์ง๋: 1
์๊ฐ: 547:214
๊ฒฝ๊ณผ: 547.989
๋นํธ๋ ์ดํธ: 160
list_OK
ํ์ผ: ์คํฌํฐํ์ด:ํธ๋:3n52npc7FPjG4dBZcgLjmD
์๊ฐ: 214
์ํฐ์คํธ: Silverstein
์จ๋ฒ: 18 Candles: The Early Years
์ ๋ชฉ: My Heroine - ์ด์ฟ ์คํฑ
๋ ์ง: 2006๋
ํธ๋: 13
์์น: 4
์์ด๋: 5
์จ๋ฒ์ํฐ์คํธ: Silverstein
X-AlbumUri: spotify:album:5wwo3iPJ93pElRfHs97bea
list_OK
์ข์์
๋๋ฒ๊ทธ 2017-03-26 08:55:15,451 [1:MpdSession-34] mopidy.internal.network
ํด๋ผ์ด์ธํธ์ ์ฐ๊ฒฐ์ด ๋๊ฒผ์ ๊ฐ๋ฅ์ฑ์ด ํฝ๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:55:15,453 [1:MpdSession-34] mopidy.internal.network
์ด๋ฏธ ์ค์ง ์ค: Actor๊ฐ ์ข
๋ฃ ์ค์
๋๋ค.
์ฌ๊ธฐ์ ๋์ ๋๋ ๊ฒ์
์์๋๋ก ์๋ํฉ๋๋ค.
๋๋ฒ๊ทธ 2017-03-26 08:46:07,224 [1:์ค๋์ค-2] mopidy.audio.gst
'spotify:track:3n52npc7FPjG4dBZcgLjmD' ํธ๋์ ๋ํ TAG ์ด๋ฒคํธ ๋ณด๋ด๊ธฐ: 'taglist, Artist=(string)Silverstein, title=(string)"My\ Heroine\ -\ Acoustic", Album=(string)"18\ Candles:\ The \ ์ด๊ธฐ";'
[...]
๋๋ฒ๊ทธ 2017-03-26 08:46:08,230 [1:MainThread] mopidy.audio.gst
Get TAG ๋ฒ์ค ๋ฉ์์ง: tags={'album': [u'18 Candles: The Early Years'], 'artist': [u'Silverstein'], 'title': [u'My Heroine - Acoustic']}
๊ทธ๋ฌ๋ ์์๋๋ก ์๋ํ์ง ์๋ ๊ฒฝ์ฐ์๋ง
"TAG ์ด๋ฒคํธ ์ ์ก ์ค" ๋ฉ์์ง.
โ
๋น์ ์ด ์ธ๊ธ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๋ ๊ฒ์
๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ํ์ ํ๊ฑฐ๋ GitHub https://github.com/mopidy/mopidy/issues/1528#issuecomment-289267755 ์์ ํ์ธํ๊ฑฐ๋ ์ค๋ ๋ https://github.com/notifications/unsubscribe-auth/ABEM88lhfdyJWiIrlgk_LH6DcnsGy0Nu
๋๋ ๋ํ ์ด๊ฒ์ ๋ฐ๋ณตํ๊ฑฐ๋ ๋ฐ๋ณตํ์ง ์๊ณ ๋ณด๊ณ ์์์ ์ ์ ์์ต๋๋ค. ์ด ๋ก๊ทธ๋ฅผ ์์งํ ๋ ๋ฐ๋ณต์ ๋ํด ํ ์คํธํ๊ณ ์์์ต๋๋ค.
์๋
ํ์ธ์,
๋๋ ์์ฃผ ์งง์ ํ์ผ๋ก ๋ช ๊ฐ์ง ํ
์คํธ๋ฅผ ํ๊ณ (๊ทธ๋์ ์๋ ์ฌ๋ถ๋ฅผ ํ์ธํ๊ธฐ ์ํด ์ ๋ง ๊ธด ๋
ธ๋๋ฅผ ๋ค์ ํ์๊ฐ ์์์ต๋๋ค) ๋ด ๋ฐ๊ฒฌ:
-๋จ์ ์ด๋ฆ.
์ด ๋ฒ๊ทธ๋ฅผ ๋ฒ๊ทธ๋ก ํ๊ทธํ ์ ์์ต๋๊น?
์ด ๋ฒ๊ทธ๊ฐ ์ฑ์์ง ํ 2๊ฐ์ ๋ฆด๋ฆฌ์ค๊ฐ ์์์ง๋ง ์์ง ์ฃผ๋ชฉ์ ๋ฐ์ง ๋ชปํ์ต๋๋ค...
์ ๋ MPD๋ฅผ ๋์ฒดํ๋ ๊ฐ๋จํ ์ฌ์ฉ ์ฌ๋ก์ ๊ฒฝ์ฐ ์ด ๋ฒ๊ทธ๊ฐ ์ฃผ์ ๋ฐฉํด ์์์
๋๋ค.
๋๋ ๋ด ์ปจํ ์ด๋ ๋ก ์กฐ๊ธ ๋ ์คํ์ ํ๊ณ ์ฒ์์๋ ์ถฉ๋์ ๋ฐฐ์ ํ๊ธฐ ์ํด Moped๋ฅผ ์ ๊ฑฐํ์ง๋ง ์๋ฌด ์์ฉ์ด ์์์ต๋๋ค.
๋ด ๊ตฌ์ฑ์์ ๋ค์ ์ค์ ์ ๊ฑฐํ๋ ๊ฒ์ด ๋์์ด ๋์์ต๋๋ค.
output = audioresample ! audioconvert ! vorbisenc ! oggmux ! shout2send mount=stream.ogg ip=icecast port=8000 password=hackme
MPC๋ก ์ํ๋ฅผ ํ์ธํ ์ ์์๊ณ ์์๋๋ก ํธ๋์ด ์งํ๋๋ ๊ฒ์ ๋ณผ ์ ์์์ต๋๋ค.
๋ค์ ์ค์ ์ถ๊ฐํ๋ฉด ์ด ๋ฒ๊ทธ๊ฐ ๋ฐ์ํ์ง ์๊ณ Icecast๋ก ์ถ๋ ฅ์ ๋ณต์ํ ์ ์์ต๋๋ค.
output = lamemp3enc ! shout2send mount=stream.mp3 ip=icecast port=8000 password=hackme
๋ฐ๋ผ์ ์ด ์์ ์์ ๋ด ๊ฒฐ๋ก ์ ์ถ๋ ฅ์ Ogg Vorbis ์ธ์ฝ๋ฉ๊ณผ ์๋ชป๋ ์ํธ ์์ฉ์ด ์๋ค๋ ๊ฒ์ ๋๋ค. ์คํ๋ ค ์คํด์ ์์ง๊ฐ ์๋ค๊ณ ๋๋ผ๊ธฐ ๋๋ฌธ์ https://docs.mopidy.com/en/latest/audio/#streaming -through-icecast์์ ํด๋น ์์ ๋ฅผ ์ ๊ฑฐํ ๊ฐ์น๊ฐ ์๋์ง ๊ถ๊ธํฉ๋๋ค.
oggmux์์ ๋ฌธ์ ๋ฅผ ํ์ธํ ์ ์์ผ๋ฉฐ vorbis ๋์ opusenc๋ฅผ ์ฌ์ฉํ์ฌ ์ฌํํ์ต๋๋ค. ์๋ฌด๋ ์ด๊ฒ์ ๋ํด ์กฐ์ฌํ ์ ์์ต๋๊น?
์ด ๋ฒ๊ทธ๋ฅผ ๋ฒ๊ทธ๋ก ํ๊ทธํ ์ ์์ต๋๊น?
์ด ๋ฒ๊ทธ๊ฐ ์ฑ์์ง ํ 2๊ฐ์ ๋ฆด๋ฆฌ์ค๊ฐ ์์์ง๋ง ์์ง ์ฃผ๋ชฉ์ ๋ฐ์ง ๋ชปํ์ต๋๋ค...
์ ๋ MPD๋ฅผ ๋์ฒดํ๋ ๊ฐ๋จํ ์ฌ์ฉ ์ฌ๋ก์ ๊ฒฝ์ฐ ์ด ๋ฒ๊ทธ๊ฐ ์ฃผ์ ๋ฐฉํด ์์์ ๋๋ค.
๋ฏธ๋ฆฌ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
์ด๊ฒ์ ์ฌ์ ํ โโ๋ฌธ์ ์ด์ง๋ง ๊ธฐ๋ณธ ๊ตฌ์ฑ์์ ๋ฐ์ํ๋ฏ๋ก Icecast์ ๊ตญํ๋์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ด ๋ฌธ์ ์ ๋ํ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น? mopidy-subidy์ ๋์ผํ ๋ฌธ์ ๊ฐ ์์๊ณ ์์ ์ค์ธ ๋ฐฑ์๋ ํ๋ฌ๊ทธ์ธ์๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. Gmusic ํ๋ฌ๊ทธ์ธ #183 ์์๋ ๋์ผํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
ํธ์ง: MPD์ HTTP(Mopidy-Material-Webclient ์ฌ์ฉ) ๋ชจ๋์์ ์ด ๋ฌธ์ ๊ฐ ์์ต๋๋ค. MPD์์๋ <>(๋ค๋ก)๋ฅผ ๋น ๋ฅด๊ฒ ํญํ์ฌ ๋ค์ ๋ ธ๋๋ก ๊ฑด๋๋ธ ์ ์์ต๋๋ค. ๊ทธ๋์ ๊ฒฝ์ ์กฐ๊ฑด์ด๋ ํ์ด๋ฐ ๋ฌธ์ ์ธ ๊ฒ ๊ฐ์์? ๋ํ ๋ ธ๋๊ฐ ๋๋๋ก ๋์ ๋๋ฌํ๊ณ ์๋์ผ๋ก ๋ค์ ๋ ธ๋๋ก ์ด๋ํ์ง ์๋๋ค๋ ์ ์ ์ ์ํ ๊ฐ์น๊ฐ ์์ต๋๋ค.
๋๋ ๋ํ ๋ก์ปฌ ๋จธ์ ํ์ฌ ์ธ์ (pulseaudio/Ubuntu18.10)์ ๋ํ ๊ธฐ๋ณธ ์ถ๋ ฅ๊ณผ ํจ๊ป ํธ๋์ ๋ณ๊ฒฝํ๋ ์ ์ฌํ ์คํจ๋ฅผ ๋ณด๊ณ ์์ต๋๋ค(์ด๊ฒ์ ๋๋ฅผ ์ํ ์ฐจ๋จ๊ธฐ์ ๋๋ค). ํธ๋ ๋ณ๊ฒฝ์ ํนํ ogg ํ์ผ์ ์ฌ์ํ ๋ ์์์ ์ค๋ช ํ ๊ฒ๊ณผ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ค๋จ๋๋ ๋ฐ๋ฉด mp3/spotify๋ ์ ์๋ํฉ๋๋ค. ์๋ฌด๊ฒ๋ ๋ชจ๋ฅด์ง๋ง ๋ค์(๊ณ ์ !) ํด๋ ๋ฉํ์ธ ๋ฒ๊ทธ๊ฐ ๋น์ทํ๊ฐ์? https://github.com/clementine-player/Clementine/pull/6103 ์ ๊ฒฝ์ฐ์๋ ์ค์ ๋ก ์ํ ์๋๊ฐ ๋ค๋ฅธ ogg ํ์ผ์ด ์์ต๋๋ค.
์ฌ๊ธฐ์ ํต์ฌ์ gstreamer ๋ฒ์ ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๋ฌธ์ ๊ฐ ์๋ ์ฌ๋์ด ๋ค์ด๊ทธ๋ ์ด๋๋ฅผ ์๋ํ ์ ์๋ค๋ฉด ์ข์ต๋๋ค.
๋ค์ด๊ทธ๋ ์ด๋๋ฅผ ์๋ํ ์ ์์ต๋๋ค. ์๋ํด์ผ ํ ํน์ ๋ฒ์ ์ด ์์ต๋๊น?
v1.10 ์๋ง๋.
์๊ฒ ์ต๋๋ค. ๊ฒฐ๊ตญ gstreamer์ธ ๊ฒ ๊ฐ์ต๋๋ค. v1.10์์๋ Mopidy๋ฅผ ์ฌ์ฉํ ์ ์์ง๋ง v1.12.2์์๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์์์ ์ค๋ช ํ ๊ฒ๊ณผ ๋์ผํ ๋ฌธ์ ๊ฐ ์๋ ๊ฒ์ผ๋ก ๋ณด์ด๋ ๋ชจ๋ ๊ณผ๊ฑฐ ๋ฒ์ .
@pv ํด๋ ๋ฉํ์ธ ๋ฌธ์ ๊ฐ ํฅ๋ฏธ๋กญ๊ณ ๋๊ธฐ์ด์์ ๋๊ธฐ์ด2๋ก์ ๋์ผํ ์ค์์น๋ฅผ Mopidy ์ฝ๋์ ํดํนํ์ฌ ์๋ํด ๋ณด๋ ๊ฒ์ ์ฌ์ธ ๊ฒ์ ๋๋ค. ๋๋ ์ง๊ธ๊น์ง ๊ทธ๊ฒ์ ์ค์ค๋ก ์ฌํํ ์ ์์์ง๋ง ์๋ง๋ ๋ค๋ฅธ ์ํ ๋ ์ดํธ๊ฐ ํต์ฌ์ผ ๊ฒ์ ๋๋ค.
@kingosticks : ์ ์ ๊ฐ์ฌํฉ๋๋ค. ๋ค์ ๋ณ๊ฒฝ ์ฌํญ์ ํ์ธํฉ๋๋ค(mopidy 2.2.2๋ก).
--- mopidy/audio/actor.py.old 2019-01-13 14:22:34.377491564 +0200
+++ mopidy/audio/actor.py 2019-01-13 14:22:55.836419833 +0200
@@ -134,7 +134,10 @@
logger.info('Audio output set to "%s"', description)
def _add(self, element):
- queue = Gst.ElementFactory.make('queue')
+ if os.environ.get('MOPIDY_QUEUE2', '0').strip() == '1':
+ queue = Gst.ElementFactory.make('queue2')
+ else:
+ queue = Gst.ElementFactory.make('queue')
self.add(element)
self.add(queue)
queue.link(element)
@@ -492,7 +495,10 @@
def _setup_audio_sink(self):
audio_sink = Gst.ElementFactory.make('bin', 'audio-sink')
- queue = Gst.ElementFactory.make('queue')
+ if os.environ.get('MOPIDY_QUEUE2', '0').strip() == '1':
+ queue = Gst.ElementFactory.make('queue2')
+ else:
+ queue = Gst.ElementFactory.make('queue')
volume = Gst.ElementFactory.make('volume')
# Queue element to buy us time between the about-to-finish event and
์ด ๋ฌธ์ ๋ MOPIDY_QUEUE2=0 mopidy
์คํํ ๋ 100% ์กด์ฌํ๋ฉฐ MOPIDY_QUEUE2=1 mopidy
์ ํจ๊ป ๋ํ๋์ง ์์ต๋๋ค.
๋ด๊ฐ ์ฐพ์ ๊ฐ์ฅ ์์ ์ฌํ์ ์ฒจ๋ถ๋ ๋ ๊ฐ์ ogg ํ์ผ์
๋๋ค --- ์ง๊ธ ์ฌ์ ์ค์ธ ํ์ผ์ ๋ ๋ค ์ถ๊ฐํด์ผ ํ๋ฉฐ a.ogg
์์ ์ ํํ ๋ queue
(gstreamer 1.14.4) ์ฌ์์ด ์ค๋จ๋ฉ๋๋ค a.ogg
์์ b.ogg
๋ฐ๋๋ ๋ฐ๋ฉด queue2
๋ ์ ์ ํ๋๋ ๊ฒ ๊ฐ์ต๋๋ค. ab-ogg.zip
์๋ง๋ ๋น์ทํ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ์ฌ๋ฌ ๋ฌธ์ ๊ฐ ์์ ์ ์์ง๋ง queue/queue2 ํญ๋ชฉ์ ์ต์ํ ์ฌ๊ธฐ์์ ์ฌํํ ์ ์๋ ๊ฒ์ผ๋ก ๋ณด์ด๋ฉฐ ๋ด๊ฐ ๋ณด๊ณ ์๋ ๋ฌธ์ ์ ์๋ชป์ด์์ต๋๋ค.
์ข์ ๊ฒ. ์๋ํด ์ฃผ์๊ณ ํด๋น ํ์ผ์ ์ฌ์์ฐํด ์ฃผ์
์ ๊ฐ์ฌํฉ๋๋ค. ๋ํ ๋ค๋ฅธ ๊ณณ ์์ ๊ฐ์ง ์ฑํฌ๋ฅผ ์ ๊ฑฐํ๋ฉด ์ต์ Gstreamer ๋ฒ์ ์ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋๋ ๊ฒ์ผ๋ก queue2
๋ง ์ฌ์ฉํ๋ฉด appsrc(Spotify)๋ฅผ ์ ์ธํ ๋ชจ๋ ๊ฒ์ด ๋ค์ ์๋ํ๋ ๊ฒ ๊ฐ์ต๋๋ค. appsrc๊ฐ ์์ ์ ์ผ๋ก ์๋ํ๋๋ก ํ๋ ค๋ฉด fakesink๋ฅผ ์ ๊ฑฐํ๋ ๊ฒ์ด ์ ์ผํ ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ ์์ ํ ๋ค๋ฅธ ๋ฌธ์ ์ผ ์ ์์ต๋๋ค.
์ข์์. ๊ทธ๋์ ๋๋ ์ด์ ์ด๊ฒ์ ๋ค๋ฃฐ ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ํธ๋์ ๋ณ๊ฒฝํ ๋ ์ฌ๋ฌ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
async=false
์ฑํฌ ๋งค๊ฐ๋ณ์๋ฅผ ์ค์ ํ๋ ๊ฒ์
๋๋ค. ์ฆoutput = tee name=t ! queue ! autoaudiosink t. ! queue ! lamemp3enc ! shout2send async=false mount=mopidy ip=127.0.0.1 port=8000 password=hackme
@pv์์ ๋ณผ ์ ์๋ ๋ค์ํ ์ํ ๋ ์ดํธ์ ์์ .
queue
์์๋ฅผ queue2
์์๋ก ๋ฐ๊พธ ๊ฑฐ๋ ํญ์ ์ฐ๊ฒฐ๋ fakesink ๋ฅผ ์ ๊ฑฐํ์ฌ queue
๋ฐ queue2
๋ ์ฝ๊ฐ ๋ค๋ฅด๊ฒ ์๋ํ๋ฉฐ appsrc๋ ๋ฒํผ๋ง ๋ณ๊ฒฝ ์ฌํญ์ ๋งค์ฐ ๋ฏผ๊ฐํฉ๋๋ค.
๋ฒํผ๋ง์ด ํ์ํ ์คํธ๋ฆผ(#1722). ๋ก๊ทธ์๋ "๊ฒฝํฉ ์กฐ๊ฑด์ด ๋ฐ์ํ์ต๋๋ค. #1222 ๋ฐ #1430 ์ฐธ์กฐ" ๋ฉ์์ง๊ฐ ํฌํจ๋ฉ๋๋ค.
์ด์ ๋ํ ์์ ์ฌํญ์ ๊ณง ์ถ์๋ v2.2.3 ๋ฆด๋ฆฌ์ค์ ๋๋ค.
๋ง์คํฐ ๋ธ๋์น( pip install --user git+https://github.com/mopidy/mopidy.git
)์์ ์ค์นํ๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค. ๋ด๊ฐ ์ ์ง ๊ด๋ฆฌํ๋ Mopidy ํ๋ฌ๊ทธ์ธ์์ ๋ฐ์ํ ์ผ๋ถ ์ฌ์ ๋ฌธ์ ๊ฐ ์์ ๋์์ต๋๋ค. ์ ํํ ๋ฌธ์ ๋ ํธ๋์ด ์ ๋๋ก ๋ณ๊ฒฝ๋์์ง๋ง ํธ๋ ๋ฉํ๋ฐ์ดํฐ์ ๊ด๊ณ์์ด ์ค๋์ค ์คํธ๋ฆผ ์์ฒด๋ ํญ์ ๋์ผํ๋ค๋ ๊ฒ์
๋๋ค(์ฒซ ๋ฒ์งธ ํธ๋์ ๊ฒ).
์ด์ ๋ํ ์์ ์ฌํญ์ ๊ณง ์ถ์๋ v2.2.3 ๋ฆด๋ฆฌ์ค์ ๋๋ค.
๋ง์ธ! ๋งค์ฐ ๊ฐ์ฌํฉ๋๋ค
Debian 10์ 3.0.1์์ ์ด๊ฒ์ ๊ฒฝํํ๋ ๊ฒ ๊ฐ์ต๋๋ค( ์์ธํ ).
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ด์ ๋ํ ์์ ์ฌํญ์ ๊ณง ์ถ์๋ v2.2.3 ๋ฆด๋ฆฌ์ค์ ๋๋ค.