Skip to content

hifi-decode: TypeError: No matching definition for argument type(s) int64, ... #274

@Bigorneau

Description

@Bigorneau

Checklist

  • I have searched the issues page for any duplicate issues open or closed and confirmed that this bug has not been reported before.
  • I have tested the issue with the current build.
  • I have attached log files, uploaded sample data, and commands used so that the issue can be easily reproduced by the developers.

Bug Description

Python exception

TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16
Cannot load backend 'Qt5Agg' which requires the 'qt' interactive framework, as 'headless' is currently running
Initializing ...
PAL 8mm format selected, Audio mode is l
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
WARNING: The input sample rate is not evenly divisible by the output sample rate. Audio sync issues may occur. Input Rate: 28636363, Output Rate: 48000.
Starting decode...
Progress [                                        ] 0.00%
- Decoding speed: 18376 kFrames/s (0.32x), 1 blocks enqueued
- Input position: 0:00:00.489
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:00.489
- Wall time     : 0:00:01.524
Progress [                                        ] 0.00%
- Decoding speed: 26544 kFrames/s (0.46x), 2 blocks enqueued
- Input position: 0:00:00.978
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:00.978
- Wall time     : 0:00:02.110
Progress [                                        ] 0.00%
- Decoding speed: 30886 kFrames/s (0.54x), 3 blocks enqueued
- Input position: 0:00:01.467
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:01.467
- Wall time     : 0:00:02.721
Progress [                                        ] 0.00%
- Decoding speed: 35545 kFrames/s (0.62x), 4 blocks enqueued
- Input position: 0:00:01.956
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:01.956
- Wall time     : 0:00:03.152
Progress [                                        ] 0.00%
- Decoding speed: 37805 kFrames/s (0.66x), 5 blocks enqueued
- Input position: 0:00:02.445
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:02.445
- Wall time     : 0:00:03.704
Progress [                                        ] 0.00%
- Decoding speed: 37010 kFrames/s (0.65x), 6 blocks enqueued
- Input position: 0:00:02.934
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:02.934
- Wall time     : 0:00:04.541
Progress [                                        ] 0.00%
- Decoding speed: 36141 kFrames/s (0.63x), 7 blocks enqueued
- Input position: 0:00:03.423
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:03.423
- Wall time     : 0:00:05.425
Process hifi_decode_worker_0:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2643, in hifi_decode_worker
    decode_next_block()
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2605, in decode_next_block
    audioL, audioR = decoder.block_decode(
                     ^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2458, in block_decode
    HiFiDecode.dropout_compensate(preL, preR, self.audio_process_params)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2259, in dropout_compensate
    HiFiDecode._mute_or_fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2209, in _mute_or_fill
    HiFiDecode._fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/numba/core/dispatcher.py", line 659, in _explain_matching_error
    raise TypeError(msg)
TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16
Process hifi_decode_worker_5:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2643, in hifi_decode_worker
    decode_next_block()
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2605, in decode_next_block
    audioL, audioR = decoder.block_decode(
                     ^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2458, in block_decode
    HiFiDecode.dropout_compensate(preL, preR, self.audio_process_params)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2259, in dropout_compensate
    HiFiDecode._mute_or_fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2209, in _mute_or_fill
    HiFiDecode._fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/numba/core/dispatcher.py", line 659, in _explain_matching_error
    raise TypeError(msg)
TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16
Process hifi_decode_worker_2:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2643, in hifi_decode_worker
    decode_next_block()
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2605, in decode_next_block
    audioL, audioR = decoder.block_decode(
                     ^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2458, in block_decode
    HiFiDecode.dropout_compensate(preL, preR, self.audio_process_params)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2259, in dropout_compensate
    HiFiDecode._mute_or_fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2209, in _mute_or_fill
    HiFiDecode._fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/numba/core/dispatcher.py", line 659, in _explain_matching_error
    raise TypeError(msg)
TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16
Process hifi_decode_worker_3:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2643, in hifi_decode_worker
    decode_next_block()
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2605, in decode_next_block
    audioL, audioR = decoder.block_decode(
                     ^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2458, in block_decode
    HiFiDecode.dropout_compensate(preL, preR, self.audio_process_params)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2259, in dropout_compensate
    HiFiDecode._mute_or_fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2209, in _mute_or_fill
    HiFiDecode._fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/numba/core/dispatcher.py", line 659, in _explain_matching_error
    raise TypeError(msg)
TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16
Progress [                                        ] 0.00%
- Decoding speed: 35781 kFrames/s (0.62x), 8 blocks enqueued
- Input position: 0:00:03.912
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:03.912
- Wall time     : 0:00:06.262
Process hifi_decode_worker_6:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2643, in hifi_decode_worker
    decode_next_block()
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2605, in decode_next_block
    audioL, audioR = decoder.block_decode(
                     ^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2458, in block_decode
    HiFiDecode.dropout_compensate(preL, preR, self.audio_process_params)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2259, in dropout_compensate
    HiFiDecode._mute_or_fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2209, in _mute_or_fill
    HiFiDecode._fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/numba/core/dispatcher.py", line 659, in _explain_matching_error
    raise TypeError(msg)
TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16
Process hifi_decode_worker_1:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2643, in hifi_decode_worker
    decode_next_block()
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2605, in decode_next_block
    audioL, audioR = decoder.block_decode(
                     ^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2458, in block_decode
    HiFiDecode.dropout_compensate(preL, preR, self.audio_process_params)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2259, in dropout_compensate
    HiFiDecode._mute_or_fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2209, in _mute_or_fill
    HiFiDecode._fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/numba/core/dispatcher.py", line 659, in _explain_matching_error
    raise TypeError(msg)
TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16
Progress [                                        ] 0.00%
- Decoding speed: 35441 kFrames/s (0.62x), 9 blocks enqueued
- Input position: 0:00:04.401
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:04.401
- Wall time     : 0:00:07.113
Process hifi_decode_worker_4:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2643, in hifi_decode_worker
    decode_next_block()
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2605, in decode_next_block
    audioL, audioR = decoder.block_decode(
                     ^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2458, in block_decode
    HiFiDecode.dropout_compensate(preL, preR, self.audio_process_params)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2259, in dropout_compensate
    HiFiDecode._mute_or_fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2209, in _mute_or_fill
    HiFiDecode._fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/numba/core/dispatcher.py", line 659, in _explain_matching_error
    raise TypeError(msg)
TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16
Progress [                                        ] 0.00%
- Decoding speed: 35587 kFrames/s (0.62x), 10 blocks enqueued
- Input position: 0:00:04.890
- Audio position: 0:00:00.000
- Audio buffer  : 0:00:04.890
- Wall time     : 0:00:07.870
Process hifi_decode_worker_7:
Traceback (most recent call last):
  File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2643, in hifi_decode_worker
    decode_next_block()
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2605, in decode_next_block
    audioL, audioR = decoder.block_decode(
                     ^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2458, in block_decode
    HiFiDecode.dropout_compensate(preL, preR, self.audio_process_params)
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2259, in dropout_compensate
    HiFiDecode._mute_or_fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/vhsdecode/hifi/HiFiDecode.py", line 2209, in _mute_or_fill
    HiFiDecode._fill(
  File "/home/ubuntu/opt/python/venv/vhs/lib/python3.12/site-packages/numba/core/dispatcher.py", line 659, in _explain_matching_error
    raise TypeError(msg)
TypeError: No matching definition for argument type(s) int64, int64, array(float32, 1d, C), none, int64, int64, bool, float16

Steps to Reproduce

  • CXCard with original crystal
  1. Record Video8 with Jig on a Sony VCR
    timeout 130m cat /dev/cxadc0 |pv > CX_Card_28msps_8-bit.u8
  2. Compress to flac
    flac -f "CX_Card_28msps_8-bit.u8" --threads 64 --best --sample-rate=28636 --sign=unsigned --channels=1 --endian=little --bps=8 -o "CX_Card_28msps_8-bit.u8.flac" --warnings-as-errors --delete-input-file --verify
  3. Decode video at 8fsc
    vhs-decode --overwrite --tf VIDEO8 --ts SP -f 8fsc --pal --threads 8 --recheck_phase "${file}" "${output}/vhs-decode"
  4. Decode audio
    hifi-decode --overwrite -t 8 -p -f 8fsc --8mm --audio_mode l --audio_rate 48000 "${file}" "${output}/hifi-decode.flac"

Exception occurs

Expected Behaviour

hifi-decode finish without error

Actual Behaviour

Python exception occurs

Environment

Ampere Compute A1 (Oracle, Ampere Altra) VM.

  • Decode version: 0.3.8.2.dev50
    $ pip list | grep "vhs"
    vhs_decode            0.3.8.2.dev50
    
  • Operating System: Ubuntu 24.04.3 LTS
  • Hardware Used: Ampere Altra (ARMv8), 4 cores, 24G RAM and 24G Swap

Additional Information

TBD

Is it related to tbc-video-export?

No

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions