diff --git a/gst/audioconvert/gstaudioconvertorc.orc b/gst/audioconvert/gstaudioconvertorc.orc index 24fdf02d48..a5a0939d06 100644 --- a/gst/audioconvert/gstaudioconvertorc.orc +++ b/gst/audioconvert/gstaudioconvertorc.orc @@ -4,14 +4,14 @@ .temp 8 t1 convld t1, s1 -divd d1, t1, 0x41DFFFFFFFC00000L +divd d1, t1, 2147483648.0L .function audio_convert_orc_double_to_s32 .dest 4 d1 gint32 .source 8 s1 gdouble .temp 8 t1 -muld t1, s1, 0x41DFFFFFFFC00000L +muld t1, s1, 2147483648.0L convdl d1, t1 .function audio_convert_orc_int_bias diff --git a/tests/check/elements/audioconvert.c b/tests/check/elements/audioconvert.c index 5c450c4a45..ee1f003496 100644 --- a/tests/check/elements/audioconvert.c +++ b/tests/check/elements/audioconvert.c @@ -747,9 +747,9 @@ GST_START_TEST (test_float_conversion) { gint16 in[] = { 0, -32768, 16384, -16384 }; gdouble out[] = { 0.0, - (gdouble) (-32768L << 16) / 2147483647.0, /* ~ -1.0 */ - (gdouble) (16384L << 16) / 2147483647.0, /* ~ 0.5 */ - (gdouble) (-16384L << 16) / 2147483647.0, /* ~ -0.5 */ + (gdouble) (-32768L << 16) / 2147483648.0, /* ~ -1.0 */ + (gdouble) (16384L << 16) / 2147483648.0, /* ~ 0.5 */ + (gdouble) (-16384L << 16) / 2147483648.0, /* ~ -0.5 */ }; RUN_CONVERSION ("16 signed to 64 float", @@ -759,9 +759,9 @@ GST_START_TEST (test_float_conversion) { gint32 in[] = { 0, (-1L << 31), (1L << 30), (-1L << 30) }; gdouble out[] = { 0.0, - (gdouble) (-1L << 31) / 2147483647.0, /* ~ -1.0 */ - (gdouble) (1L << 30) / 2147483647.0, /* ~ 0.5 */ - (gdouble) (-1L << 30) / 2147483647.0, /* ~ -0.5 */ + (gdouble) (-1L << 31) / 2147483648.0, /* ~ -1.0 */ + (gdouble) (1L << 30) / 2147483648.0, /* ~ 0.5 */ + (gdouble) (-1L << 30) / 2147483648.0, /* ~ -0.5 */ }; RUN_CONVERSION ("32 signed to 64 float",