DiscoRezzz
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Подсобите, плиз, если кто знает. Мне нужно надёжно определить, каким кодером (и его версию) сжат мп3-файл. Я юзаю Аудио Тул Лайбрери. Дело в том, что в некоторых случаях на те треки которые я сам же и сжимал Lame -ом выдаётся результат FHG или Xing. Что характерно, в хекс-эдиторе текстовой поиск находит и Lame и FHG... В исходниках ATL как то странно всё это определяется: ------------------------------------------------------------------- function FGetCBREncoderID: Byte; begin { Guess CBR encoder and get ID } Result := MPEG_ENCODER_FHG; if (FFrame.OriginalBit) and (FFrame.ProtectionBit) then Result := MPEG_ENCODER_LAME; if (GetBitRate(FFrame) <= 160) and (FFrame.ModeID = MPEG_CM_STEREO) then Result := MPEG_ENCODER_BLADE; if (FFrame.CopyrightBit) and (FFrame.OriginalBit) and (not FFrame.ProtectionBit) then Result := MPEG_ENCODER_XING; if (FFrame.Xing) and (FFrame.OriginalBit) then Result := MPEG_ENCODER_XING; if FFrame.LayerID = MPEG_LAYER_II then Result := MPEG_ENCODER_QDESIGN; if (FFrame.ModeID = MPEG_CM_DUAL_CHANNEL) and (FFrame.ProtectionBit) then Result := MPEG_ENCODER_SHINE; if Copy(FVendorID, 1, 4) = VENDOR_ID_LAME then Result := MPEG_ENCODER_LAME; if Copy(FVendorID, 1, 4) = VENDOR_ID_GOGO_NEW then Result := MPEG_ENCODER_GOGO; end; -------------------------------------------------------------------- Порыл в и-нете, не могу найти, куда кодеки пишут о себе информацию. Может плохо искал... Если кто сталкивался, помогите чайнику... |