Metadata does not work when broadcasting AAC

Bug #1930762 reported by Alexander Horner
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Wishlist
Alexander Horner

Bug Description

When broadcasting in AAC format in the latest 2.3 beta as downloaded from the Mixxx site, metadata is not sent to the server. The metadata is sent as expected when the encoding is set to MP3. This has been reproduced by two users on separate machines

Operating System: Windows 10
CPU: Intel Core i5-7400 @ 3.00GHz
Sound: Onboard

Steps to reproduce:
 - Install Mixxx 2.3 from website
 - Broadcast to a Shoutcast or Icecast server in AAC format @ any bitrate
 - Switch metadata as you play music. No metadata is sent to the server either at initial broadcast or on song change

Revision history for this message
Grzegorz Kibitz (justgregsr) wrote :

Any updates on this? Thanks :)

Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

EncoderFdkAac::updateMetaData() is not implemented yet.

Changed in mixxx:
status: New → Confirmed
importance: Undecided → Wishlist
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

ShoutConnection::updateMetaData() is what actually seems to be used. The comments in the code state that transfer of metadata only works (or worked?) for MP3. It is disabled for other formats.

Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

If you are able to get it working this would be great. Pull requests are welcome.

Revision history for this message
Alexander Horner (ahhorner) wrote :

Hi,

I have further looked into this, and it appears no metadata transmission is available via FDK-AAC (or maybe any AAC at all)

Having looked at another product which is able to transmit metadata with AAC, it seems it is configured to call Icecast's /admin/metadata endpoint in order to update the metadata of the current broadcast endpoint.

I have no experience in this with C++. Had it been part of the encoder, I may have been able to do this myself.

Since this is probably not the only encoder which does not support metadata in-stream, I think the implementation of metadata updates via HTTP Icecast and, if supported, Shoutcast (shoutcast, however, I have never used and therefore do not know if it is supported via HTTP) would be quite valuable, and could be used for all implementations.

It could also be valuable to provide this as an option to enable which overrides the encoders native metadata transmission if desired, providing a consistent shared metadata transmission implementation. I mention this because I find the LAME metadata transmission on Mixxx to be hit and miss.

Revision history for this message
Alexander Horner (ahhorner) wrote :

Scratch that. Had a deeper look. Pull request opened https://github.com/mixxxdj/mixxx/pull/3995

Changed in mixxx:
milestone: none → 2.3.0
status: Confirmed → In Progress
assignee: nobody → Alexander Horner (ahhorner)
Changed in mixxx:
status: In Progress → Fix Committed
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/10429

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.