fix: decode opus manually and use json audio transcription
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
import base64
|
||||
import os
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, os.path.dirname(os.path.dirname(__file__)))
|
||||
|
||||
from openrouter_client import _audio_format, _build_transcription_payload
|
||||
|
||||
|
||||
def test_audio_format_defaults_to_wav_when_missing_suffix(tmp_path: Path):
|
||||
path = tmp_path / "recording"
|
||||
path.write_bytes(b"abc")
|
||||
assert _audio_format(str(path)) == "wav"
|
||||
|
||||
|
||||
def test_build_transcription_payload_uses_base64_json_shape(tmp_path: Path):
|
||||
path = tmp_path / "meeting.wav"
|
||||
path.write_bytes(b"RIFFdemo")
|
||||
|
||||
payload = _build_transcription_payload(str(path))
|
||||
|
||||
assert payload["model"] == "openai/whisper-large-v3"
|
||||
assert payload["input_audio"]["format"] == "wav"
|
||||
assert payload["input_audio"]["data"] == base64.b64encode(b"RIFFdemo").decode("ascii")
|
||||
Reference in New Issue
Block a user