Commit 9f1c6607 authored by Jan Kiene's avatar Jan Kiene
Browse files

convert offset in ms to samples for slicing

parent f26b93b0
Loading
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -232,7 +232,7 @@ def compare(
    fs: int,
    per_frame: bool = True,
    get_mld: bool = False,
    offset_test_start: int = 0,
    test_start_offset_ms: int = 0,
) -> dict:
    """Compare two audio arrays

@@ -255,7 +255,8 @@ def compare(
        Comparison results
    """
    framesize = fs // 50
    diff = abs(test[offset_test_start:, :] - ref)
    test_start_offset_samples = int(fs * test_start_offset_ms / 1000)
    diff = abs(test[test_start_offset_samples:, :] - ref)
    max_diff = int(diff.max())
    result = {
        "bitexact": True,
+2 −2
Original line number Diff line number Diff line
@@ -791,13 +791,13 @@ if __name__ == "__main__":
            print("Can only compare signals of same sampling rate")
            exit(-1)

        cmp_result = audioarray.compare(s1, s2, fs1, per_frame=False, offset_test_start=compare_args.test_start_offset)
        cmp_result = audioarray.compare(s1, s2, fs1, per_frame=False, test_start_offset_ms=compare_args.test_start_offset_ms)
        exit(cmp_result["max_abs_diff"])

    parser_compare = subparsers.add_parser("compare", help="Compare two wav files for bitexactness")
    parser_compare.add_argument("ref_file")
    parser_compare.add_argument("test_file")
    parser_compare.add_argument("test_start_offset", default=0, type=int)
    parser_compare.add_argument("test_start_offset_ms", default=0, type=int)
    parser_compare.set_defaults(func=compare_wrapper)

    args = parser.parse_args()