ElvishArtisan / rivendell

A full-featured radio automation system targeted for use in professional broadcast and media environments
197 stars 63 forks source link

4.2.2 BUG? Metadata Garbled for Spanish Characters #969

Closed WLGW-Ops closed 3 weeks ago

WLGW-Ops commented 1 month ago

Greetings,

As of v4.2.2 we're noticing Spanish characters scrambled in our icecast metadata. I've attached screenshots showing an example artist in RDLibrary in addition to screenshots from two difference streaming platforms that both show an issue.

NOTE: Issue did not occur prior to v4.2.2, the example artist/song has not been changed in Rivendell since 2022.

Config: EL8 v4.2.2

Best Regards, Brian WLGW Operations

Screenshot from 2024-05-22 13-32-24 Screenshot from 2024-05-22 13-31-33 Screenshot from 2024-05-22 13-30-27

ElvishArtisan commented 1 month ago

Please post:

  1. The name of the PyPAD script being used and its configuration (from RDAdmin->ManageHosts->PyPADInstances).
  2. The version of IceCast
  3. The name and version of the ICES encoder being used --e.g. 'glasscoder v2.0.1')
  4. The expected output, in text form --i.e. not as an image capture.
WLGW-Ops commented 1 month ago

Hi Fred,

Please see as follows:

  1. /usr/lib64/rivendell/pypad/pypad_icecast2.py (Config dump below)
  2. Icecast v2 (I'm unsure specific versions per third party services - I can try to obtain if needed)
  3. ICES encoder is indeed glasscoder v2.0.1
  4. Expected output: Velásquez

Question - Would using Ogg as a codec vs MP3 impact metadata in any way?

Icecast Pypad Conf: [Icecast1] Username=----------- Password=------------

Hostname=ingest.live365.com

Tcpport=8000

Mountpoint=/a60987_live

FormatString=%a - %t

MasterLog=Yes Aux1Log=No Aux2Log=No VLog101=No VLog102=No VLog103=No VLog104=No VLog105=No VLog106=No VLog107=No VLog108=No VLog109=No VLog110=No VLog111=No VLog112=No VLog113=No VLog114=No VLog115=No VLog116=No VLog117=No VLog118=No VLog119=No VLog120=No

[NowGroups] Group1=MUSIC Group2=LEGAL Group3=IDENTS Group4=TALK

[NextGroups] Group1=NOSUCHGROUP

ElvishArtisan commented 1 month ago

Question - Would using Ogg as a codec vs MP3 impact metadata in any way?

That's a 'nice' question. The Rivendell/PyPAD bits are the same (they use an identical http GET call to the IceCast instance), but the internal IceCast details of how the metadata are multiplexed onto the bitstream are totally different. So: maybe?

ElvishArtisan commented 1 month ago

Confirmed here.

What was the last 'known good' version of Rivendell?

WLGW-Ops commented 1 month ago

I do believe v4.2.1 was bug free, but we ran that version for such a short time as to not recall. I can test on another instance if needed (may be a few days due to sched). 4.1.x never had any such issues.

ElvishArtisan commented 1 month ago

Fixed in 0ef5a88. Please test.

ElvishArtisan commented 1 month ago

I do believe v4.2.1 was bug free, but we ran that version for such a short time as to not recall. I can test on another instance if needed (may be a few days due to sched). 4.1.x never had any such issues.

Interesting. I'm a bit surprised that it ever worked properly with stock IceCast. Makes me wonder if Live365 has patched IceCast for their own purposes. FWIW, all of my testing here was conducted with stock IceCast v2.4.4.

WLGW-Ops commented 1 month ago

It's possible Live365 patched, however the issue appeared in TuneIN, Radioboss (cloud relay) and our Inovonics stream monitor. So maybe? Not sure....

I replaced pypad_icecast2.py with the update, restarted caed and had no metadata sent to any icecast instance. Did I miss something? It IS Monday...

WLGW-Ops commented 1 month ago

Question - Would using Ogg as a codec vs MP3 impact metadata in any way?

That's a 'nice' question. The Rivendell/PyPAD bits are the same (they use an identical http GET call to the IceCast instance), but the internal IceCast details of how the metadata are multiplexed onto the bitstream are totally different. So: maybe?

FYI - I tested this for kicks and grins with no difference in output between OGG and mp3.

ElvishArtisan commented 1 month ago

I replaced pypad_icecast2.py with the update, restarted caed and had no metadata sent to any icecast instance. Did I miss something? It IS Monday...

You'll need to update the full Rivendell stack, as more than just the PyPAD plug-in itself was implicated. See c4e6914c. (I should have referenced this in my earlier request for testing; my bad!)

WLGW-Ops commented 1 month ago

No worries, I suspected that may be the case, but didn't want to assume. I'll test and report back. Thanks!

WLGW-Ops commented 4 weeks ago

Metadata issues still persists with 4.2.2int0.

Current metadata output is rendered as follows: We Can Make a Difference - Jaci Vel�squez

WLGW-Ops commented 3 weeks ago

Greetings - My testing also confirms this issue is indeed fixed in https://github.com/ElvishArtisan/rivendell/commit/c4e6914c29cd0ee3a2e27c708db2a977bed77cc3. It would have helped if I tested the correct code version the first time. Oy vey!

Thanks again!