Mopidy: рдореЛрдкрд┐рдбреА рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдкрд┐рдЫрд▓реЗ рдЯреНрд░реИрдХ рд╢реАрд░реНрд╖рдХ рдХреЛ рдЕрдЧрд▓реЗ рдЯреНрд░реИрдХ рдкрд░ рд▓рд╛рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 15 рдЬрдире░ 2020  ┬╖  11рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: mopidy/mopidy

рдирдорд╕реНрддреЗ,

рдореЛрдкрд┐рдбреА рдХреЛ рдПрдХ рдЯреНрд░реИрдХ рдЦрддреНрдо рдХрд░рдиреЗ рдФрд░ рдЕрдЧрд▓реЗ рдПрдХ рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЯреНрд░реИрдХ рдХрд╛ рд╢реАрд░реНрд╖рдХ рдареАрдХ рд╕реЗ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЕрдЧрд▓реЗ рдЯреНрд░реИрдХ рдХрд╛ рд╢реАрд░реНрд╖рдХ рдкрд┐рдЫрд▓реЗ рд╡рд╛рд▓реЗ рдХреЗ рд╕рдорд╛рди рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдзреАрд░реЗ-рдзреАрд░реЗ рдмрд┐рдЧрдбрд╝рддреА рд╣реБрдИ рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ, рдФрд░ рдкреВрд░реА рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рддрд┐рд░рдЫреА рд╣реЛ рдЬрд╛рддреА рд╣реИред
рд░рд┐рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП; рдСрдбрд┐рдпреЛ рдареАрдХ рдЪрд▓рддрд╛ рд╣реИ, рдХрд▓рд╛рдХрд╛рд░ рдХреЛ рдареАрдХ рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЯреНрд░реИрдХ рдирдВрдмрд░ рдХреЛ рдареАрдХ рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реА рддрд░рд╣ рдЯреНрд░реИрдХ рдХреА рд▓рдВрдмрд╛рдИ рдФрд░ рдкреНрд░рдЧрддрд┐ рд╣реЛрддреА рд╣реИред

рдкреНрд░рдЬрдирди рдХреЗ рдЪрд░рдг:

  1. рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреЛ рдХреБрдЫ рдЯреНрд░реИрдХреНрд╕ рд╕реЗ рднрд░реЗрдВ,
  2. рдмрд┐рдирд╛ рд╕реНрдХрд┐рдк рдХрд┐рдП рдпрд╛ рдЦреЛрдЬреЗ рдмрд┐рдирд╛ рдПрдХ рдХреЛ рдЪрд▓рд╛рдПрдВ (рдЬреИрд╕рд╛ рдХрд┐ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдХрд┐рд╕реА рдЯреНрд░реИрдХ рдХреЛ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рдЪрд▓рдиреЗ рджреЗрддреЗ рд╣реИрдВ)
  3. рдЯреНрд░реИрдХ рдХреЛ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рджреЗрдВ, рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдЕрдЧрд▓реЗ рдЯреНрд░реИрдХ рдкрд░ рдЬрд╛рддреЗ рд╕рдордп рд╢реАрд░реНрд╖рдХ рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИред
    рдореИрдВ Mopidy рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдФрд░ рдЗрд╕рдХреЗ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдЖрд░реНрдХ рд▓рд┐рдирдХреНрд╕ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ:

  4. рдореЛрдкрд┐рдбреА 3.0.1-2

  5. рдореЛрдкрд┐рдбреА-рд▓реЛрдХрд▓ 3.1.0-1
  6. рдореЛрдкрд┐рдбреА-рдПрдордкреАрдбреА 3.0.0-1
  7. рдореЛрдкрд┐рдбреА-рд╕рд╛рдЙрдВрдбрдХреНрд▓рд╛рдЙрдб 3.0.0-1
    рдпреЗ рд╕рднреА рдЖрд░реНрдХ рдФрд░ AUR рдкрд░ рдирд╡реАрдирддрдо рдЬреНрдЮрд╛рдд рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВред

рдореИрдВ рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓ рдХрд╣реАрдВ рдореЛрдкрд┐рдбреА 3 рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдЗрд╕рд╕реЗ рдирд┐рдкрдЯ рд░рд╣рд╛ рд╣реВрдВ, рдЬрдмрдХрд┐ 2 рдореЗрдВ рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрднреА рдирд╣реАрдВ рд╣реБрдЖред
рдпрд╣ рдореБрджреНрджрд╛ #1528 https://github.com/mopidy/mopidy/issues/1528 рдЬреИрд╕рд╛ рд╣реА рд▓рдЧрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡рд╣ Mopidy 2 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддрд╛ рд╣реИред

рдиреАрдЪреЗ рджрд┐рдЦрд╛рдП рдЧрдП рдЯреНрд░реИрдХ рдореЛрдкрд┐рдбреА-рд▓реЛрдХрд▓ рд╕реЗ рдмрдЬрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдПрдирд╕реАрдПрдордкреАрд╕реАрдкреАрдкреА рдореЗрдВ:
рдЧрд▓рдд рдЯреНрд░реИрдХ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ https://camo.githubusercontent.com/fa91261107d7af341374ef03a1ab2a774e813e9f/68747470733a2f2f692e696d6775722e636f6d2f5547674830477a2e706e67

рдФрд░ рдкреЙрд▓реАрдмрд╛рд░ рдХреЗ рдПрдордкреАрдбреА рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдВ:
Polybar рдПрдордкреАрдбреА https://camo.githubusercontent.com/5b6207e174cd0cce829d2164aba91868c451d50b/68747470733a2f2f692e696d6775722e636f6d2f374d5a69367a4a2e706e67

рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЯреНрд░реИрдХ рд╕реВрдЪреА рд╣реИ:
рд╕рд╣реА рдЯреНрд░реИрдХ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ https://camo.githubusercontent.com/c99c327c9505f563f9f96a92b2b54df2a4f02a28/68747470733a2f2f692e696d6775722e636f6d2f384d53666665422e706e67

рдПрдХ рдЕрд▓рдЧ рдПрд▓реНрдмрдо рдХреЗ рд╕рд╛рде, рдореИрдВрдиреЗ рдЙрд╕ рд╕рдордп рдХреЗ рджреМрд░рд╛рди mopidy -v рдХреЗ рд╕рд╛рде рд▓реЙрдЧ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред
рд▓реЙрдЧ рдЗрди рдХрд░реЗрдВ

DEBUG 2020-01-15 14:07:06,594 [79919:MainThread] mopidy.audio.actor
рдСрдбрд┐рдпреЛ рдШрдЯрдирд╛: Tags_changed (рдЯреИрдЧ = ['рдиреНрдпреВрдирддрдо-рдмрд┐рдЯрд░реЗрдЯ', 'рдмрд┐рдЯрд░реЗрдЯ'])
DEBUG 2020-01-15 14:07:06,594 [79919: MainThread] mopidy.listener
рдЯреИрдЧ рднреЗрдЬрдирд╛_рдСрдбрд┐рдпреЛ рд▓рд┐рд╕реНрдЯрдирд░ рдореЗрдВ рдмрджрд▓рд╛ рдЧрдпрд╛: {'рдЯреИрдЧ': ['рдиреНрдпреВрдирддрдо-рдмрд┐рдЯрд░реЗрдЯ', 'рдмрд┐рдЯрд░реЗрдЯ']}
рдбрд┐рдмрдЧ 2020-01-15 14:07:06,644 [79919:рдПрдордкреАрдбреАрд╕реЗрд╢рди-11] mopidy_mpd.session
[:: ffff:127.0.0.1 ]:34768: noidle . рд╕реЗ рдЕрдиреБрд░реЛрдз
рдбрд┐рдмрдЧ 2020-01-15 14:07:06,644 [79919:рдПрдордкреАрдбреАрд╕реЗрд╢рди-11] mopidy_mpd.session
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ [:: ffff:127.0.0.1 ]:34768: рдареАрдХ
рдбрд┐рдмрдЧ 2020-01-15 14:07:06,644 [79919:рдПрдордкреАрдбреАрд╕реЗрд╢рди-11] mopidy_mpd.session
рд╕реЗ рдЕрдиреБрд░реЛрдз [:: ffff:127.0.0.1 ]:34768: рд╕реНрдерд┐рддрд┐
рдбрд┐рдмрдЧ 2020-01-15 14:07:06,647 [79919:рдПрдордкреАрдбреАрд╕реЗрд╢рди-11] mopidy_mpd.session
[:: ffff:резреирен.реж.реж.рез ]:рейрекренремрео:
рдорд╛рддреНрд░рд╛: 100
рджреЛрд╣рд░рд╛рдирд╛: 0
рдпрд╛рджреГрдЪреНрдЫрд┐рдХ: 0
рд╕рд┐рдВрдЧрд▓: 0
рдЙрдкрднреЛрдЧ: 0
рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ: 5
рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреА рд▓рдВрдмрд╛рдИ: 8
xfade: 0
рд░рд╛рдЬреНрдп: рдЦреЗрд▓
рдЧреАрдд: 2
рдЧреАрдд: резреи
рдЕрдЧрд▓рд╛ рдЧреАрдд: 3
рдиреЗрдХреНрд╕реНрдЯрд╕реЙрдиреНрдЧ: резрей
рд╕рдордп: 1:270
рдмреАрддрд╛ рд╣реБрдЖ: 1.412
рдмрд┐рдЯрд░реЗрдЯ: 0
рдареАрдХ рд╣реИ
рдбрд┐рдмрдЧ 2020-01-15 14:07:06,648 [79919:рдПрдордкреАрдбреАрд╕реЗрд╢рди-11] mopidy_mpd.session
рд╕реЗ рдЕрдиреБрд░реЛрдз [:: ffff:127.0.0.1 ]:34768: рдирд┐рд╖реНрдХреНрд░рд┐рдп
DEBUG 2020-01-15 14:07:06,656 [79919:MainThread] mopidy.audio.gst
TAG рдмрд╕ рд╕рдВрджреЗрд╢ рдорд┐рд▓рд╛: рдЯреИрдЧ = {'рдХрд▓рд╛рдХрд╛рд░': ['рдмреЗрди рд▓реБрдХрд╛рд╕ рдмреЙрдпрд╕рди'], 'рд╢реАрд░реНрд╖рдХ': ['рд╕реНрд▓реАрдкрд░реНрд╕ рдмреАрдЯ рдереАрдо'], 'рдЯреНрд░реИрдХ-рдирдВрдмрд░': [3], 'рдЯреНрд░реИрдХ-рдХрд╛рдЙрдВрдЯ': [рео ], 'рдПрд▓реНрдмрдо': ['рдордВрддреНрд░'], 'рдбреЗрдЯрд╛рдЯрд╛рдЗрдо': ['2016'], 'рдПрд▓реНрдмрдо-рдХрд▓рд╛рдХрд╛рд░': ['рдмреЗрди рд▓реБрдХрд╛рд╕ рдмреЙрдпрд╕рди'], 'рд╕рдВрдЧрдарди': ['рдорд┐рдЯрд╛рдП рдЧрдП рдЯреЗрдк рд░рд┐рдХреЙрд░реНрдб'], 'рд╢реИрд▓реА ': ['рдкрд░рд┐рд╡реЗрд╢/рдЖрдзреБрдирд┐рдХ рд╢рд╛рд╕реНрддреНрд░реАрдп'], 'рдЖрдИрдПрд╕рдЖрд░рд╕реА': ['ERATP085'], 'рдЫрд╡рд┐':
рдбрд┐рдмрдЧ рдЖрдЙрдЯрдкреБрдЯ (рдЫрд╡рд┐рдпреЛрдВ рд╕реЗ) рдореЗрдВ рдмрд╣реБрдд рд╢реЛрд░ рдерд╛ рдФрд░ рдпрд╣ рдЬрд▓реНрджреА рд╕реЗ рдореЗрд░реЗ рдЯрд░реНрдорд┐рдирд▓ рдХреЗ рдмрдлрд░ рдЖрдХрд╛рд░ рд╕реЗ рдЖрдЧреЗ рдирд┐рдХрд▓ рдЧрдпрд╛ред
рдпрджрд┐ рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдФрд░ рдореИрдВ рд╡рд╣ рдХрд░реВрдВрдЧрд╛ рдЬреЛ рдореИрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдзрдиреНрдпрд╡рд╛рджред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдкрд╣рд▓реЗ рд╕реЗ рдХрд╣реАрдВ рдмреЗрд╣рддрд░ рджреЗрд░ рд╕реЗ, рдЕрдкрдбреЗрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЯреИрдЧ рдХрд░реЗрдВ рдФрд░ рдЗрди рд╕рднреА рдШрдЯрдирд╛рдУрдВ рд╕реЗ рдпрд╣ рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдм async рд╣реИред рдФрд░ рдЬрдм рд╕реЗ рдореИрдВ рдЗрд╕ рд╕рд╛рдорд╛рди рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ, рддрдм рд╕реЗ рдпрд╣ рдЙрдореНрд░ рд╣реЛ рдЧрдИ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓реАрдХреГрдд рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЖрд░реЗрдЦ рдХреЗ рд╕рд╛рде рдЬрд╛рддрд╛ рд╣реИ:

[SRC] --> [DECODER] --> [SINK]
  • about-to-finish рдЯреНрд░рд┐рдЧрд░ рд╣реЛрдиреЗ рдкрд░ SRC рдбреЗрдЯрд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ
  • рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдЯреИрдЧ рдЕрдкрдбреЗрдЯ рдЕрднреА рднреА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рдордзреНрдпрд╡рд░реНрддреА рдиреЛрдбреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╡рд╛рд╣рд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ
  • рд╡рд░реНрддрдорд╛рди рдЯреНрд░реИрдХ рдХреЗ рд▓рд┐рдП рдСрдбрд┐рдпреЛ рдЕрднреА рднреА рдЗрд╕ рд╕реНрддрд░ рдкрд░ рдкреНрд░рд╡рд╛рд╣рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реИ
  • Icecast рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдЬреИрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдпреЗ рдЯреИрдЧ SINK рдЬрд╛рддреЗ рд╣реИрдВ рдЬрдм рд╡реЗ рд▓рд╛рдЗрд╡ рд╣реЛрддреЗ рд╣реИрдВ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рд╣рдо рдЙрдиреНрд╣реЗрдВ рднреА рдЙрдард╛рддреЗ рд╣реИрдВ)
  • STREAM_START - рдореБрдЭреЗ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдпрд╣ рдШрдЯрдирд╛ рддрдм рдорд┐рд▓рддреА рд╣реИ рдЬрдм рдпрд╣ SINK рдпрд╛ рдЬрдм рдпрд╣ SRC - рдпрд╣ рдЕрдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдпрдж рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред https://gstreamer.freedesktop.org/documentation/gstreamer/gstmessage.html?gi-language=c#gst_message_new_stream_start рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд╛рдЗрдкрд▓рд╛рдЗрди/рдмрд┐рди рд╢рд╛рдпрдж рдЗрд╕реЗ рд╕рдВрджреЗрд╢ рдмрд╕ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░ рджреЗрддрд╛ рд╣реИ рдЬрдм рд╕рднреА рд╕рд┐рдВрдХ рдЗрд╕реЗ рджреЗрдЦ рд▓реЗрддреЗ рд╣реИрдВред

рддреЛ рд╕реЛрдЪреЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдРрд╕реЗ рдорд╛рдорд▓реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ about-to-finish рдФрд░ рдЕрдЧрд▓рд╛ рдЯреНрд░реИрдХ рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреЗ рдмреАрдЪ рдореЗрдВ рд╕рд╛рд░реНрдердХ рдЯреИрдЧ рд╣реЛрдВред рдпрджрд┐ рдпрд╣ рдЕрдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рддреЛ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдб рдореЗрдВ рдПрдХ TODO рдЬреЛрдбрд╝рдирд╛ рдФрд░ рдлреЙрд▓реЛрдЕрдк рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреНрдп рдмрдЧ рджрд░реНрдЬ рдХрд░рдирд╛, рдпрджрд┐ рд╡рд╣ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рд╕реЗ рдХрдо рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИ?

рд╕рднреА 11 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдпрд╣ mopidy/mopidy-mpd#23 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рджрд┐рдЦрддрд╛ рд╣реИред

рдХреЛрдИ рджрд┐рдХреНрдХрдд рдирд╣реАрдВ рд╣реИ! рджреЛрдиреЛрдВ рд░рд┐рдкреЛрд░реНрдЯ рдШрдВрдЯреЛрдВ рдХреЗ рднреАрддрд░ рдЖрдИрдВ, рдФрд░ рд╣рдо рдЕрднреА рднреА рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдореВрд▓ рдХрд╛рд░рдг рдХрд┐рд╕ рдШрдЯрдХ рдореЗрдВ рд╣реИред

рдореИрдВрдиреЗ рдХрд╣рд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рд╢рд╛рдпрдж https://github.com/mopidy/mopidy/pull/1751 рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдерд╛ рдЕрдЧрд░ рдпрд╣ рдмрдпрд╛рди рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдерд╛ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ Mopidy 2.x рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рдерд╛ред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдорд╣реАрдиреЛрдВ рд╕реЗ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдпрд╣рд╛рдВ рдЖрд░реНрдХ, рд╕рдм рдХреБрдЫ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ред

рдореЛрдкрд┐рдбреА рдиреЗ рдкрд┐рдЫрд▓реЗ рдЯреНрд░реИрдХ рд╢реАрд░реНрд╖рдХ рдХреЛ рд╡рд░реНрддрдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдмрд░рдХрд░рд╛рд░ рд░рдЦрд╛ рд╣реИред рдпрд╛рдиреА рдЯреНрд░реИрдХ рдЦрддреНрдо - ncmpcpp рдФрд░ рдкреЙрд▓реАрдмрд╛рд░ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдкрд┐рдЫрд▓реЗ рдЯреНрд░реИрдХ рдирд╛рдо рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ (рдмрд╕ "рдПрдорд┐рдиреЗрдо - рдЗрди рдЯреВ рдбреАрдк")ред рдЬрдмрдХрд┐ mpc "рдЧреЙрдбрдЬрд╝рд┐рд▓рд╛: рдПрдорд┐рдиреЗрдо - рдЗрди рдЯреВ рдбреАрдк" рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рдЧреЙрдбрдЬрд╝рд┐рд▓рд╛ рд╡рд░реНрддрдорд╛рди рдЧреАрдд рд╣реИ рдФрд░ рдЗрди рдЯреВ рдбреАрдк рдкрд┐рдЫрд▓рд╛ рдерд╛ред рдпрд╣ рдереЛрдбрд╝реЗ рдЕрдЬреАрдм рд╣реИ, рдПрдХ рдмрдЧ рд╣реИ рд▓реЗрдХрд┐рди рдПрдордкреАрд╕реА рджреЛрдиреЛрдВ рдХреНрдпреЛрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИ?

рдпрд╣ https://github.com/mopidy/mopidy/pull/1751 рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдХрд╛рд╢ рдореЗрдВ рд▓рд╛рдИ рдЧрдИ рдЪреАрдЬреЛрдВ рдХрд╛ рдПрдХ рд╕рдВрдпреЛрдЬрди рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдпрд╣ Mopidy v2.3.0 рдореЗрдВ рднреА рдореМрдЬреВрдж рд╣реИред

рдореЗрд░реА рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдкрд╣рд▓реЗ рджреЛ рдЯреНрд░реИрдХ рд╣реИрдВ (1) 'рдЧрд┐рдЯрд╛рд░ рдЯреВ рдХрд┐рд▓' рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж (2) 'рдП рд▓рд┐рдЯрд┐рд▓ рдмрд┐рдЯ рдСрдл рд╕реЙрд▓рд┐рдбреЗрд░рд┐рдЯреА рдЧреЛрдЬрд╝ рдП рд▓реЙрдиреНрдЧ рд╡реЗ'ред рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рд▓реЙрдЧ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдЯреНрд░реИрдХ рдХреЗ (1) рд╕реЗ (2) рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдПрдХ рдЯреИрдЧ рдмрджрд▓рд╛ рд╣реБрдЖ рдИрд╡реЗрдВрдЯ рдорд┐рд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдкреБрд░рд╛рдиреЗ рдЯреНрд░реИрдХ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ stream_title_changed рднреЗрдЬрддреЗ рд╣реИрдВред

Dummy-21 DEBUG    2020-01-17 23:58:44,257 Got about-to-finish event.
Dummy-21 DEBUG    2020-01-17 23:58:44,257 Running about-to-finish callback.
LocalBackend-8 DEBUG    2020-01-17 23:58:44,259 Backend translated URI from local:track:And%20So%20I%20Watch%20You%20From%20Afar%20-%20Self%20Titled%20%282009%29/02-and_so_i_watch_you_from_afar-a_little_bit_of_solidarity_goes_a_long_way.mp3 to file:///home/nick/Music/And%20So%20I%20Watch%20You%20From%20Afar%20-%20Self%20Titled%20%282009%29/02-and_so_i_watch_you_from_afar-a_little_bit_of_solidarity_goes_a_long_way.mp3
Dummy-21 DEBUG    2020-01-17 23:58:44,262 Got source-setup signal: element=GstFileSrc
MainThread DEBUG    2020-01-17 23:58:44,574 Got TAG bus message: tags={'title': ['Set Guitars To Kill'], 'artist': ['And So I Watch You From Afar'], 'album': ['Self Titled'], 'datetime': ['2009-04-13'], 'track-number': [1], 'genre': ['Instrumental Rock'], 'container-format': ['ID3 tag'], 'private-id3v2-frame': [b'TLAN\x00\x00\x00\x04\x00\x00\x00eng', b'TXXX\x00\x00\x00\x14\x00\x00\x00Rip date\x002009-04-14', b'TXXX\x00\x00\x00\n\x00\x00\x00Source\x00CD', b'TXXX\x00\x00\x00\x1c\x00\x00\x00Release type\x00Normal release'], 'track-count': [11], 'encoder': ['LAME 3.97 (-V2 --vbr-new)'], 'publisher': ['Smalltown America'], 'private-data': [b'\x02\x00\xfb1K\x00'], 'has-crc': [False], 'channel-mode': ['joint-stereo'], 'audio-codec': ['MPEG-1 Layer 3 (MP3)'], 'minimum-bitrate': [95856], 'maximum-bitrate': [319725], 'bitrate': [252000]}
MainThread DEBUG    2020-01-17 23:58:44,853 Got TAG bus message: tags={'title': ['Set Guitars To Kill'], 'artist': ['And So I Watch You From Afar'], 'album': ['Self Titled'], 'datetime': ['2009-04-13'], 'track-number': [1], 'genre': ['Instrumental Rock'], 'container-format': ['ID3 tag'], 'private-id3v2-frame': [b'TLAN\x00\x00\x00\x04\x00\x00\x00eng', b'TXXX\x00\x00\x00\x14\x00\x00\x00Rip date\x002009-04-14', b'TXXX\x00\x00\x00\n\x00\x00\x00Source\x00CD', b'TXXX\x00\x00\x00\x1c\x00\x00\x00Release type\x00Normal release'], 'track-count': [11], 'encoder': ['LAME 3.97 (-V2 --vbr-new)'], 'publisher': ['Smalltown America'], 'private-data': [b'\x02\x00\xfb1K\x00'], 'has-crc': [False], 'channel-mode': ['joint-stereo'], 'audio-codec': ['MPEG-1 Layer 3 (MP3)'], 'minimum-bitrate': [79931], 'maximum-bitrate': [319725], 'bitrate': [252000]}
MainThread DEBUG    2020-01-17 23:58:45,062 Got TAG bus message: tags={'title': ['Set Guitars To Kill'], 'artist': ['And So I Watch You From Afar'], 'album': ['Self Titled'], 'datetime': ['2009-04-13'], 'track-number': [1], 'genre': ['Instrumental Rock'], 'container-format': ['ID3 tag'], 'private-id3v2-frame': [b'TLAN\x00\x00\x00\x04\x00\x00\x00eng', b'TXXX\x00\x00\x00\x14\x00\x00\x00Rip date\x002009-04-14', b'TXXX\x00\x00\x00\n\x00\x00\x00Source\x00CD', b'TXXX\x00\x00\x00\x1c\x00\x00\x00Release type\x00Normal release'], 'track-count': [11], 'encoder': ['LAME 3.97 (-V2 --vbr-new)'], 'publisher': ['Smalltown America'], 'private-data': [b'\x02\x00\xfb1K\x00'], 'has-crc': [False], 'channel-mode': ['joint-stereo'], 'audio-codec': ['MPEG-1 Layer 3 (MP3)'], 'minimum-bitrate': [63700], 'maximum-bitrate': [319725], 'bitrate': [252000]}
MainThread DEBUG    2020-01-17 23:58:45,342 Got TAG bus message: tags={'title': ['Set Guitars To Kill'], 'artist': ['And So I Watch You From Afar'], 'album': ['Self Titled'], 'datetime': ['2009-04-13'], 'track-number': [1], 'genre': ['Instrumental Rock'], 'container-format': ['ID3 tag'], 'private-id3v2-frame': [b'TLAN\x00\x00\x00\x04\x00\x00\x00eng', b'TXXX\x00\x00\x00\x14\x00\x00\x00Rip date\x002009-04-14', b'TXXX\x00\x00\x00\n\x00\x00\x00Source\x00CD', b'TXXX\x00\x00\x00\x1c\x00\x00\x00Release type\x00Normal release'], 'track-count': [11], 'encoder': ['LAME 3.97 (-V2 --vbr-new)'], 'publisher': ['Smalltown America'], 'private-data': [b'\x02\x00\xfb1K\x00'], 'has-crc': [False], 'channel-mode': ['joint-stereo'], 'audio-codec': ['MPEG-1 Layer 3 (MP3)'], 'minimum-bitrate': [55737], 'maximum-bitrate': [319725], 'bitrate': [252000]}
MainThread DEBUG    2020-01-17 23:58:45,481 Got TAG bus message: tags={'title': ['Set Guitars To Kill'], 'artist': ['And So I Watch You From Afar'], 'album': ['Self Titled'], 'datetime': ['2009-04-13'], 'track-number': [1], 'genre': ['Instrumental Rock'], 'container-format': ['ID3 tag'], 'private-id3v2-frame': [b'TLAN\x00\x00\x00\x04\x00\x00\x00eng', b'TXXX\x00\x00\x00\x14\x00\x00\x00Rip date\x002009-04-14', b'TXXX\x00\x00\x00\n\x00\x00\x00Source\x00CD', b'TXXX\x00\x00\x00\x1c\x00\x00\x00Release type\x00Normal release'], 'track-count': [11], 'encoder': ['LAME 3.97 (-V2 --vbr-new)'], 'publisher': ['Smalltown America'], 'private-data': [b'\x02\x00\xfb1K\x00'], 'has-crc': [False], 'channel-mode': ['joint-stereo'], 'audio-codec': ['MPEG-1 Layer 3 (MP3)'], 'minimum-bitrate': [47775], 'maximum-bitrate': [319725], 'bitrate': [252000]}
MainThread DEBUG    2020-01-17 23:58:46,251 Got TAG bus message: tags={'title': ['Set Guitars To Kill'], 'artist': ['And So I Watch You From Afar'], 'album': ['Self Titled'], 'datetime': ['2009-04-13'], 'track-number': [1], 'genre': ['Instrumental Rock'], 'container-format': ['ID3 tag'], 'private-id3v2-frame': [b'TLAN\x00\x00\x00\x04\x00\x00\x00eng', b'TXXX\x00\x00\x00\x14\x00\x00\x00Rip date\x002009-04-14', b'TXXX\x00\x00\x00\n\x00\x00\x00Source\x00CD', b'TXXX\x00\x00\x00\x1c\x00\x00\x00Release type\x00Normal release'], 'track-count': [11], 'encoder': ['LAME 3.97 (-V2 --vbr-new)'], 'publisher': ['Smalltown America'], 'private-data': [b'\x02\x00\xfb1K\x00'], 'has-crc': [False], 'channel-mode': ['joint-stereo'], 'audio-codec': ['MPEG-1 Layer 3 (MP3)'], 'minimum-bitrate': [31850], 'maximum-bitrate': [319725], 'bitrate': [252000]}
MainThread DEBUG    2020-01-17 23:58:47,429 Got STREAM_START bus message
Dummy-20 DEBUG    2020-01-17 23:58:47,430 Got SEGMENT pad event: rate=1.0 format=time start=0 stop=18446744073709551615 position=0
MainThread DEBUG    2020-01-17 23:58:47,431 Audio event: stream_changed(uri='file:///home/nick/Music/And%20So%20I%20Watch%20You%20From%20Afar%20-%20Self%20Titled%20%282009%29/02-and_so_i_watch_you_from_afar-a_little_bit_of_solidarity_goes_a_long_way.mp3')
Dummy-20 DEBUG    2020-01-17 23:58:47,431 Audio event: position_changed(position=0)
MainThread DEBUG    2020-01-17 23:58:47,432 Sending stream_changed to AudioListener: {'uri': 'file:///home/nick/Music/And%20So%20I%20Watch%20You%20From%20Afar%20-%20Self%20Titled%20%282009%29/02-and_so_i_watch_you_from_afar-a_little_bit_of_solidarity_goes_a_long_way.mp3'}
Dummy-20 DEBUG    2020-01-17 23:58:47,432 Sending position_changed to AudioListener: {'position': 0}
MainThread DEBUG    2020-01-17 23:58:47,433 Audio event: tags_changed(tags=dict_keys(['title', 'artist', 'album', 'datetime', 'track-number', 'genre', 'container-format', 'private-id3v2-frame', 'track-count', 'encoder', 'publisher', 'private-data', 'has-crc', 'channel-mode', 'audio-codec', 'minimum-bitrate', 'maximum-bitrate', 'bitrate']))
Core-10 DEBUG    2020-01-17 23:58:47,434 Triggering track playback ended event
Core-10 DEBUG    2020-01-17 23:58:47,437 Sending track_playback_ended to CoreListener: {'tl_track': TlTrack(tlid=10, track=Track(album=Album(date='2009-04-13', name='Self Titled', num_tracks=11, uri='local:album:md5:5bdacb653bbd94bd6d1cbc68dc1854da'), artists=[Artist(name='And So I Watch You From Afar', uri='local:artist:md5:f69d2a608336108f1d645744c63d6dea')], date='2009-04-13', genre='Instrumental Rock', last_modified=1310599762000, length=329639, name='Set Guitars To Kill', track_no=1, uri='local:track:And%20So%20I%20Watch%20You%20From%20Afar%20-%20Self%20Titled%20%282009%29/01-and_so_i_watch_you_from_afar-set_guitars_to_kill.mp3')), 'time_position': 329639}
Core-10 DEBUG    2020-01-17 23:58:47,438 Changing state: playing -> playing
Core-10 DEBUG    2020-01-17 23:58:47,439 Triggering playback state change event
MainThread DEBUG    2020-01-17 23:58:47,435 Sending tags_changed to AudioListener: {'tags': dict_keys(['title', 'artist', 'album', 'datetime', 'track-number', 'genre', 'container-format', 'private-id3v2-frame', 'track-count', 'encoder', 'publisher', 'private-data', 'has-crc', 'channel-mode', 'audio-codec', 'minimum-bitrate', 'maximum-bitrate', 'bitrate'])}
Core-10 DEBUG    2020-01-17 23:58:47,440 Sending playback_state_changed to CoreListener: {'old_state': 'playing', 'new_state': 'playing'}
Core-10 DEBUG    2020-01-17 23:58:47,451 Triggering track playback started event
Core-10 DEBUG    2020-01-17 23:58:47,453 Sending track_playback_started to CoreListener: {'tl_track': TlTrack(tlid=11, track=Track(album=Album(date='2009-04-13', name='Self Titled', num_tracks=11, uri='local:album:md5:5bdacb653bbd94bd6d1cbc68dc1854da'), artists=[Artist(name='And So I Watch You From Afar', uri='local:artist:md5:f69d2a608336108f1d645744c63d6dea')], date='2009-04-13', genre='Instrumental Rock', last_modified=1310599762000, length=205871, name='A Little Bit Of Solidarity Goes A Long Way', track_no=2, uri='local:track:And%20So%20I%20Watch%20You%20From%20Afar%20-%20Self%20Titled%20%282009%29/02-and_so_i_watch_you_from_afar-a_little_bit_of_solidarity_goes_a_long_way.mp3'))}
MpdFrontend-13 DEBUG    2020-01-17 23:58:47,452 Sending player to MpdSession: {}
Core-10 DEBUG    2020-01-17 23:58:47,458 Sending stream_title_changed to CoreListener: {'title': 'Set Guitars To Kill'}

рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ (2) рдХреЗ рд▓рд┐рдП рдирдП рдЯреИрдЧ рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП self.audio.get_current_tags().get() рдкрд░ рд╣рдорд╛рд░реА рдХреЙрд▓ рдЕрднреА рддрдХ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реБрдИ рд╣реИ рдФрд░ рдЕрднреА рднреА (1) рдХреЗ рд▓рд┐рдП рдЯреИрдЧ рдорд╛рди рд░рдЦрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдо current_track.name рдХреА (2) рдХреА рддреБрд▓рдирд╛ title (1) рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рдкрд╛рддреЗ рд╣реБрдП рдХрд┐ рд╡реЗ рдЕрд▓рдЧ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЧрд▓рддреА рд╕реЗ stream_title_changed рдИрд╡реЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ (1) рдХрд╛ рдЙрддреНрд╕рд░реНрдЬрди рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣ get_current_tags рдФрд░ get_current_track рдмреАрдЪ рдПрдХ рджреМрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐ рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИред рдЕрдЧрд░ рдореИрдВ sleep(1) рд╕реЗ рдкрд╣рд▓реЗ get_current_tags рдбрд╛рд▓рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВ player рдирд┐рд╖реНрдХреНрд░рд┐рдп рдШрдЯрдирд╛ рдХреЛ track_playback_started рдкрд░ рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Mopidy-MPD рдХреЛ рдмрджрд▓рдХрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдЖрд╕рдкрд╛рд╕ рднреА рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЙрд╕рдХреЗ рдКрдкрд░, рд╣рдо рдирд┐рдпрдорд┐рдд рдЯреНрд░реИрдХ рдХреЗ рд▓рд┐рдП stream_title_changed рдИрд╡реЗрдВрдЯ рдХрднреА рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рдереЗ (рдореИрдВрдиреЗ рдЗрд╕реЗ #1751 рдореЗрдВ рдЦрд░рд╛рдм рдХрд░ рджрд┐рдпрд╛)ред

рдпрд╣рд╛рдВ рджреМрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐ рдЧрд▓рдд рд▓рдЧрддреА рд╣реИ, рдЯреНрд░реИрдХ рд╕реНрд╡рд┐рдЪ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдПрдХ рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдХреНрд░рд┐рдпрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП - рдЪрд╛рд╣реЗ рд╡рд╣ рдореИрдиреБрдЕрд▓ рд╣реЛ рдпрд╛ рдирд╣реАрдВред рд▓реЗрдХрд┐рди рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдореЛрдкрд┐рдб рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрдЭреЗ рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИред

рдпрд╣ рдЙрд╕рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рд╛рдБ, рдЕрдЧрд░ рдореИрдВ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рдерд╛, рддреЛ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИред

рдореЗрд░рд╛ рдорддрд▓рдм рдЕрд╢рд┐рд╖реНрдЯрддрд╛ рд╕реЗ рдмрд╛рд╣рд░ рдЖрдиреЗ рдХрд╛ рдирд╣реАрдВ рдерд╛, рджреЗрд░ рд░рд╛рдд рдереАред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдиреАрдВрдж (1) рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡реНрдпрдХреНрдд рдХреА (рдХреЛрдИ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ рд╣реИ)ред

рдХреЛрдИ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВред рдореИрдВрдиреЗ рдХреЗрд╡рд▓ sleep рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рд╛рдмрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рджреМрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐ рд╣реИред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рджреМрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐ рдирд╣реАрдВ рд╣реИред

@adamcik , рд╣рдо about-to-finish рдФрд░ STREAM_START рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ рдкреНрд░рд╛рдкреНрдд рдЯреИрдЧ рдЕрдкрдбреЗрдЯ рдХреА рдкрд░рд╡рд╛рд╣ рдХреНрдпреЛрдВ рдХрд░рддреЗ рд╣реИрдВ?

рдкрд╣рд▓реЗ рд╕реЗ рдХрд╣реАрдВ рдмреЗрд╣рддрд░ рджреЗрд░ рд╕реЗ, рдЕрдкрдбреЗрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЯреИрдЧ рдХрд░реЗрдВ рдФрд░ рдЗрди рд╕рднреА рдШрдЯрдирд╛рдУрдВ рд╕реЗ рдпрд╣ рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдм async рд╣реИред рдФрд░ рдЬрдм рд╕реЗ рдореИрдВ рдЗрд╕ рд╕рд╛рдорд╛рди рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ, рддрдм рд╕реЗ рдпрд╣ рдЙрдореНрд░ рд╣реЛ рдЧрдИ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓реАрдХреГрдд рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЖрд░реЗрдЦ рдХреЗ рд╕рд╛рде рдЬрд╛рддрд╛ рд╣реИ:

[SRC] --> [DECODER] --> [SINK]
  • about-to-finish рдЯреНрд░рд┐рдЧрд░ рд╣реЛрдиреЗ рдкрд░ SRC рдбреЗрдЯрд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ
  • рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдЯреИрдЧ рдЕрдкрдбреЗрдЯ рдЕрднреА рднреА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рдордзреНрдпрд╡рд░реНрддреА рдиреЛрдбреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╡рд╛рд╣рд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ
  • рд╡рд░реНрддрдорд╛рди рдЯреНрд░реИрдХ рдХреЗ рд▓рд┐рдП рдСрдбрд┐рдпреЛ рдЕрднреА рднреА рдЗрд╕ рд╕реНрддрд░ рдкрд░ рдкреНрд░рд╡рд╛рд╣рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реИ
  • Icecast рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдЬреИрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдпреЗ рдЯреИрдЧ SINK рдЬрд╛рддреЗ рд╣реИрдВ рдЬрдм рд╡реЗ рд▓рд╛рдЗрд╡ рд╣реЛрддреЗ рд╣реИрдВ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рд╣рдо рдЙрдиреНрд╣реЗрдВ рднреА рдЙрдард╛рддреЗ рд╣реИрдВ)
  • STREAM_START - рдореБрдЭреЗ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдпрд╣ рдШрдЯрдирд╛ рддрдм рдорд┐рд▓рддреА рд╣реИ рдЬрдм рдпрд╣ SINK рдпрд╛ рдЬрдм рдпрд╣ SRC - рдпрд╣ рдЕрдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдпрдж рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред https://gstreamer.freedesktop.org/documentation/gstreamer/gstmessage.html?gi-language=c#gst_message_new_stream_start рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд╛рдЗрдкрд▓рд╛рдЗрди/рдмрд┐рди рд╢рд╛рдпрдж рдЗрд╕реЗ рд╕рдВрджреЗрд╢ рдмрд╕ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░ рджреЗрддрд╛ рд╣реИ рдЬрдм рд╕рднреА рд╕рд┐рдВрдХ рдЗрд╕реЗ рджреЗрдЦ рд▓реЗрддреЗ рд╣реИрдВред

рддреЛ рд╕реЛрдЪреЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдРрд╕реЗ рдорд╛рдорд▓реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ about-to-finish рдФрд░ рдЕрдЧрд▓рд╛ рдЯреНрд░реИрдХ рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреЗ рдмреАрдЪ рдореЗрдВ рд╕рд╛рд░реНрдердХ рдЯреИрдЧ рд╣реЛрдВред рдпрджрд┐ рдпрд╣ рдЕрдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рддреЛ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдб рдореЗрдВ рдПрдХ TODO рдЬреЛрдбрд╝рдирд╛ рдФрд░ рдлреЙрд▓реЛрдЕрдк рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреНрдп рдмрдЧ рджрд░реНрдЬ рдХрд░рдирд╛, рдпрджрд┐ рд╡рд╣ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рд╕реЗ рдХрдо рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИ?

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

kingosticks picture kingosticks  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jodal picture jodal  ┬╖  15рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

pnijhara picture pnijhara  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

handsomegui picture handsomegui  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Mestelan picture Mestelan  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ