View Issue Details

IDProjectCategoryView StatusLast Update
0017016MMW 5Syncpublic2022-09-14 17:06
Reporterrusty Assigned To 
PriorityurgentSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Product Version5.0 
Target Version5.0Fixed in Version5.0 
Summary0017016: Auto-conversion volume leveling rules degrade audio
DescriptionAccording to our KB, volume leveling works as follows:
1 If an auto-conversion rule applies to the track being synced, it is used and during the conversion, the track volume is leveled.
2 If the deviation of the track leveling value is more than +/- 0.75 dB and
- a the file is MP3, MP3Gain is directly applied.
- b the file format is one that MediaMonkey can convert to (e.g. WMA, WAV, OGG, FLAC, M4A assuming the required codecs are installed), MediaMonkey converts to this format using its default encoding properties, leveling volume as it does so.
- c none of the previous rules apply (e.g. it's an M4A file but no M4A encoder is installed), the file is encoded into MP3 128 CBR and leveled.

Issues:
- b : what is the 'default encoding properties' ? Wouldn't it make sense to encode to the same format / same bitrate with the volume leveled?
- c : why degrade the bitrate to 128 CBR? It would make more sense to encode to MP3 at a slightly higher bitrate than the source with the volume leveled?

This isn't urgent since it doesn't apply to MMA or iPhones, but I'd appreciate clarification on it.
TagsNo tags attached.
Fixed in build2282

Relationships

related to 0007890 closedLudek MMW v4 Change conversion defaults 
related to 0019180 closedLudek MMW 5 Context menu: Remove Volume leveling from Context menu 

Activities

michal

2020-12-02 10:14

developer   ~0060500

2c) 128 CBR was changed to 160 kbps several years ago (issue 0007890), We cannot use "slightly higher bitrate", because source format is not MP3 in 2c) and bitrate in other formats means different quality than in MP3

2b) This and other basic defaults are defined by issue 0007890, other plugins have defaults internally. I will analyze possibility of using the same bitrate when format is not changed during conversion.

michal

2020-12-03 09:32

developer   ~0060523

Last edited: 2020-12-03 09:33

So this is really problematic, as each encoder has different possibilities of how to set its quality settings, it is not only about bitrate, and only the plugin knows its possible settings, it cannot be set from the main application (encoder settings are only some array of bytes for the app.). I think as this way it works many years in MM4 too, it should not be a problem. It works ok for MP3s and newer devices should recognize leveling info correctly from other formats, not sure how often is this really needed?

rusty

2020-12-08 21:37

administrator   ~0060631

2b) I'm a little bit confused. If conversion settings allow the user to configure a particular output format, isn't that output format supported? i.e. why would the UI allow the user to configure a conversion output format that's unsupported? And if a format is supported, then why would leveling during the conversion process affect whether that output format is supported?

2c) The default MP3 conversion setting is currently 192 Kbps vbr. So MM should probably use this conversion setting to handle this case as well.

michal

2020-12-09 10:24

developer   ~0060643

2b) it is some misunderstanding. We talk about "Level volume when syncing audio" setting, where user can configure leveling volume during sync without configuring output format. So source format is supported by the device, but user checked, that wants to level audio before sync. In this case convertor does not have configuration data for converting (in normal conversion it is set by user in his own config dialog), so it has to use some good enough default settings.

2c) in 0007890 was discussed, that VBR could cause some problems for some devices, that is we you chose CBR as more reliable format to use. Should I change it to 192kbps CBR?

rusty

2020-12-09 18:29

administrator   ~0060647

Last edited: 2020-12-09 18:49

2b) OK. So to summarize (for documentation purposes):
1 If an auto-conversion rule applies to the track being synced, it is used and during the conversion, the track volume is leveled.
2 If no auto-conversion rule applies and the deviation of the track leveling value is more than +/- 0.75 dB and
- a the file is MP3, MP3Gain is directly applied.
- b the file format is one that MediaMonkey can convert to (e.g. WMA, WAV, OGG, FLAC, M4A assuming the required codecs are installed), MediaMonkey converts to this format using its default encoding properties, leveling volume as it does so. The defaults are:
WMA: 75%, VBR, WMAPro codec
OGG: Quality 6
M4A: AAC VBR 50%
- c none of the previous rules apply (e.g. it's an M4A file but no M4A encoder is installed), the file is encoded into MP3 192 CBR and leveled (as per 2c below).


2c) Yes 192kbps CBR seems reasonable these days.

michal

2020-12-09 18:51

developer   ~0060649

2c) fixed in build 2282

lowlander

2021-11-29 21:16

developer   ~0066162

Fixed 128 to 192 CBR for 2c: https://www.mediamonkey.com/support/knowledge-base/mediamonkey-device-sync/sync-volume-leveling/