Case
sendspin-go -> SendspinKit
Start the server first, then the client. The client discovers or looks up the server, initiates the WebSocket connection, advertises PCM as its only supported audio format, streams audio derived from almost_silent.flac, and compares canonical PCM hashes.
Server
sendspin-go
Client
SendspinKit
Status
Passed
PCM prefix matches; trailing samples omitted=40000
Inspection
Summaries, logs, and builds
Matrix result
RAW{
"case_dir": "artifacts/results/data/macos__client-initiated-pcm__sendspin-go__to__SendspinKit",
"client_exit_code": 0,
"client_impl": "SendspinKit",
"reason": "PCM prefix matches; trailing samples omitted=40000",
"scenario_id": "client-initiated-pcm",
"server_exit_code": 0,
"server_impl": "sendspin-go",
"status": "passed"
}Server summary (JSON)
RAW{
"audio": {
"bit_depth": 16,
"channels": 1,
"clip_seconds": 5,
"duration_seconds": 5,
"fixture": "/Users/runner/work/conformance/conformance/repos/sendspin-cli/tests/fixtures/almost_silent.flac",
"frame_count": 40000,
"sample_rate": 8000,
"sent_audio_chunk_count": 100,
"sent_encoded_byte_count": 80000,
"sent_encoded_sha256": "b3481a3f75dea856a961e7842d12f8344c7147b3925f9f0b67c5445700bd4cf2",
"source_flac_sha256": "8fdda8244e318c63cd8b699fe461cd7cdddbb729327a0ba00d1bfdbe2192fe17",
"source_pcm_sha256": "9d447b5b270bc99b45bb9a616937e436c941ca56c477f9cbe16a93275a6b059e"
},
"client": {
"client_id": "SendspinKit-client-id",
"name": "SendspinKit-client",
"supported_roles": [
"player@v1"
]
},
"discovery_method": "registry_advertised",
"implementation": "sendspin-go",
"initiator_role": "client",
"peer_hello": {
"payload": {
"client_id": "SendspinKit-client-id",
"device_info": {
"manufacturer": "Apple",
"product_name": "Mac",
"software_version": "Version 26.4 (Build 25E246)"
},
"name": "SendspinKit-client",
"player@v1_support": {
"buffer_capacity": 960000,
"supported_commands": [],
"supported_formats": [
{
"bit_depth": 16,
"channels": 1,
"codec": "pcm",
"sample_rate": 8000
},
{
"bit_depth": 16,
"channels": 2,
"codec": "pcm",
"sample_rate": 8000
},
{
"bit_depth": 16,
"channels": 1,
"codec": "pcm",
"sample_rate": 44100
},
{
"bit_depth": 16,
"channels": 2,
"codec": "pcm",
"sample_rate": 44100
},
{
"bit_depth": 16,
"channels": 1,
"codec": "pcm",
"sample_rate": 48000
},
{
"bit_depth": 16,
"channels": 2,
"codec": "pcm",
"sample_rate": 48000
}
]
},
"supported_roles": [
"player@v1"
],
"version": 1
},
"type": "client/hello"
},
"preferred_codec": "pcm",
"role": "server",
"scenario_id": "client-initiated-pcm",
"server_id": "sendspin-go-server",
"server_name": "sendspin-go server",
"status": "ok",
"stream": {
"bit_depth": 16,
"channels": 1,
"codec": "pcm",
"sample_rate": 8000
}
}Server log
RAW{
"audio": {
"bit_depth": 16,
"channels": 1,
"clip_seconds": 5,
"duration_seconds": 5,
"fixture": "/Users/runner/work/conformance/conformance/repos/sendspin-cli/tests/fixtures/almost_silent.flac",
"frame_count": 40000,
"sample_rate": 8000,
"sent_audio_chunk_count": 100,
"sent_encoded_byte_count": 80000,
"sent_encoded_sha256": "b3481a3f75dea856a961e7842d12f8344c7147b3925f9f0b67c5445700bd4cf2",
"source_flac_sha256": "8fdda8244e318c63cd8b699fe461cd7cdddbb729327a0ba00d1bfdbe2192fe17",
"source_pcm_sha256": "9d447b5b270bc99b45bb9a616937e436c941ca56c477f9cbe16a93275a6b059e"
},
"client": {
"client_id": "SendspinKit-client-id",
"name": "SendspinKit-client",
"supported_roles": [
"player@v1"
]
},
"discovery_method": "registry_advertised",
"implementation": "sendspin-go",
"initiator_role": "client",
"peer_hello": {
"payload": {
"client_id": "SendspinKit-client-id",
"device_info": {
"manufacturer": "Apple",
"product_name": "Mac",
"software_version": "Version 26.4 (Build 25E246)"
},
"name": "SendspinKit-client",
"player@v1_support": {
"buffer_capacity": 960000,
"supported_commands": [],
"supported_formats": [
{
"bit_depth": 16,
"channels": 1,
"codec": "pcm",
"sample_rate": 8000
},
{
"bit_depth": 16,
"channels": 2,
"codec": "pcm",
"sample_rate": 8000
},
{
"bit_depth": 16,
"channels": 1,
"codec": "pcm",
"sample_rate": 44100
},
{
"bit_depth": 16,
"channels": 2,
"codec": "pcm",
"sample_rate": 44100
},
{
"bit_depth": 16,
"channels": 1,
"codec": "pcm",
"sample_rate": 48000
},
{
"bit_depth": 16,
"channels": 2,
"codec": "pcm",
"sample_rate": 48000
}
]
},
"supported_roles": [
"player@v1"
],
"version": 1
},
"type": "client/hello"
},
"preferred_codec": "pcm",
"role": "server",
"scenario_id": "client-initiated-pcm",
"server_id": "sendspin-go-server",
"server_name": "sendspin-go server",
"status": "ok",
"stream": {
"bit_depth": 16,
"channels": 1,
"codec": "pcm",
"sample_rate": 8000
}
}
Client summary (JSON)
RAW{
"audio": {
"audio_chunk_count": 100,
"received_pcm_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"received_sample_count": 0
},
"client_id": "SendspinKit-client-id",
"client_name": "SendspinKit-client",
"implementation": "SendspinKit",
"initiator_role": "client",
"peer_hello": {
"payload": {
"connection_reason": "playback",
"name": "sendspin-go server",
"server_id": "sendspin-go-server",
"version": 1
},
"type": "server/hello"
},
"preferred_codec": "pcm",
"role": "client",
"scenario_id": "client-initiated-pcm",
"server": {
"connection_reason": "playback",
"name": "sendspin-go server",
"server_id": "sendspin-go-server",
"version": 1
},
"status": "ok",
"stream": {}
}Client log
RAW[ADAPTER] Connecting to server at ws://127.0.0.1:18942/sendspin
[ADAPTER] Connected to server: sendspin-go server
[ADAPTER] Metadata: Almost Silent
[ADAPTER] Disconnected: connectionLost
{
"audio" : {
"audio_chunk_count" : 100,
"received_pcm_sha256" : "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"received_sample_count" : 0
},
"client_id" : "SendspinKit-client-id",
"client_name" : "SendspinKit-client",
"implementation" : "SendspinKit",
"initiator_role" : "client",
"peer_hello" : {
"payload" : {
"connection_reason" : "playback",
"name" : "sendspin-go server",
"server_id" : "sendspin-go-server",
"version" : 1
},
"type" : "server\/hello"
},
"preferred_codec" : "pcm",
"role" : "client",
"scenario_id" : "client-initiated-pcm",
"server" : {
"connection_reason" : "playback",
"name" : "sendspin-go server",
"server_id" : "sendspin-go-server",
"version" : 1
},
"status" : "ok",
"stream" : {
}
}
[ADAPTER] Summary written to artifacts/results/data/macos__client-initiated-pcm__sendspin-go__to__SendspinKit/client-summary.json
Server build log · sendspin-go-server · built · 0.73s
RAWNo build detail was recorded.
Client build log · SendspinKit-client · built · 41.07s
RAWtaPlaneCommand.swift [35/73] Compiling SendspinKit DataPlaneSink.swift [36/73] Compiling SendspinKit NoOpAudioOutput.swift [37/73] Compiling SendspinKit PCMRingBuffer.swift [38/73] Compiling SendspinKit SyncCorrection.swift [39/73] Compiling SendspinKit VolumeController.swift [40/73] Compiling SendspinKit ArtworkConfiguration.swift [41/73] Compiling SendspinKit ClientTypes.swift [42/73] Compiling SendspinKit ClockSyncStats.swift [43/73] Compiling SendspinKit ConnectionEvent.swift [44/73] Compiling SendspinKit ConnectionState.swift [45/73] Compiling SendspinKit ControlEventSink.swift [46/73] Compiling SendspinKit PlayerConfiguration.swift [47/73] Compiling SendspinKit SendspinClient+ClockSync.swift [48/73] Compiling SendspinKit SendspinClient+Commands.swift [49/73] Compiling SendspinKit SendspinClient+Discovery.swift [50/73] Compiling SendspinKit ClientRole.swift [51/73] Compiling SendspinKit ClientStateMessages.swift [52/73] Compiling SendspinKit CommandMessages.swift [53/73] Compiling SendspinKit GoodbyeMessage.swift [54/73] Compiling SendspinKit HelloMessages.swift [55/73] Compiling SendspinKit SendspinMessage.swift [56/73] Compiling SendspinKit ServerStateMessages.swift [57/73] Compiling SendspinKit StreamMessages.swift [58/73] Compiling SendspinKit TimeMessages.swift [59/73] Compiling SendspinKit SendspinKit.swift [60/73] Compiling SendspinKit ClockSyncProtocol.swift [61/73] Compiling SendspinKit ClockSynchronizer.swift [62/73] Compiling SendspinKit MonotonicClock.swift [63/73] Compiling SendspinKit SendspinTimeFilter.swift [64/73] Compiling SendspinKit TimeFilterSnapshot.swift [65/73] Compiling SendspinKit FrameInbox.swift [66/73] Compiling SendspinKit NWWebSocketTransport.swift [67/73] Compiling SendspinKit SendspinEncoding.swift [68/73] Compiling SendspinKit SendspinTransport.swift [69/73] Compiling SendspinKit TransportError.swift [70/73] Compiling SendspinKit WatermarkedSink.swift [71/75] Compiling ConformanceSendspinKitClient main.swift [72/75] Emitting module ConformanceSendspinKitClient [72/75] Write Objects.LinkFileList [73/75] Linking ConformanceSendspinKitClient [74/75] Applying ConformanceSendspinKitClient Build complete! (30.21s) Fetching https://github.com/sbooth/flac-binary-xcframework.git Fetching https://github.com/sbooth/ogg-binary-xcframework.git [1/32] Fetching flac-binary-xcframework [33/55] Fetching flac-binary-xcframework, ogg-binary-xcframework Fetched https://github.com/sbooth/ogg-binary-xcframework.git from cache (0.43s) Fetched https://github.com/sbooth/flac-binary-xcframework.git from cache (0.43s) Fetching https://github.com/alta/swift-opus.git [1/783] Fetching swift-opus Fetched https://github.com/alta/swift-opus.git from cache (0.50s) Creating working copy for https://github.com/sbooth/flac-binary-xcframework.git Creating working copy for https://github.com/sbooth/ogg-binary-xcframework.git Creating working copy for https://github.com/alta/swift-opus.git Working copy of https://github.com/sbooth/ogg-binary-xcframework.git resolved at 0.1.3 Working copy of https://github.com/sbooth/flac-binary-xcframework.git resolved at 0.2.0 Working copy of https://github.com/alta/swift-opus.git resolved at 0.0.2 Downloading binary artifact https://github.com/sbooth/ogg-binary-xcframework/releases/download/0.1.3/ogg.xcframework.zip Downloading binary artifact https://github.com/sbooth/flac-binary-xcframework/releases/download/0.2.0/FLAC.xcframework.zip [32768/3922418] Downloading https://github.com/sbooth/flac-binary-xcframework/releases/download/0.2.0/FLAC.xcframework.zip [65518/4541165] Downloading https://github.com/sbooth/flac-binary-xcframework/releases/download/0.2.0/FLAC.xcframework.zip, https://github.com/sbooth/ogg-binary-xcframework/releases/download/0.1.3/ogg.xcframework.zip Downloaded https://github.com/sbooth/ogg-binary-xcframework/releases/download/0.1.3/ogg.xcframework.zip (0.64s) Downloaded https://github.com/sbooth/flac-binary-xcframework/releases/download/0.2.0/FLAC.xcframework.zip (0.81s)