philhartung / aes67-sender Goto Github PK
View Code? Open in Web Editor NEWMake a soundcard input available in an AES67 network
Home Page: https://aes67.app
License: GNU General Public License v3.0
Make a soundcard input available in an AES67 network
Home Page: https://aes67.app
License: GNU General Public License v3.0
Hi,
I'm having some trouble with aes67-sender and JACK. When using ALSA everything seems to be working ok, but with JACK i get no audio callback in the code. I've inserted a log row in audio callback and there is nothing coming in. There is sound in jack 'cables', I've attached a VU meter using Carla and it seems fine. See log:
~/aes67-sender$ authbind --deep node aes67 -v -a jack -d 1 -c 2 -n "syshar"
Selected Jack as audio api
Selected 192.168.5.152 as network interface
Selected device shairport-sync with 2 input channels
Selected 239.69.5.152 as RTP multicast address.
Opening audio stream.
Trying to sync to PTP master.
Synced to b8-27-eb-ff-fe-4c-81-29:0 successfully
Starting SAP annoucements and audio stream.
Any ideas?
Hello
i installed the ptp4l package and started it:
sudo ptp4l -A -m -i eth0 -S -i lo
ptp4l[1247.384]: port 1: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[1247.385]: port 2: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[1247.385]: port 0: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[1254.157]: port 1: LISTENING to MASTER on ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES
ptp4l[1254.158]: selected local clock dca632.fffe.2481d2 as best master
ptp4l[1254.158]: port 1: assuming the grand master role
ptp4l[1254.556]: port 2: LISTENING to MASTER on ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES
ptp4l[1254.557]: selected local clock dca632.fffe.2481d2 as best master
ptp4l[1254.557]: port 1: assuming the grand master role
ptp4l[1254.557]: port 2: assuming the grand master role
Then i launched the aes67 sender - i have a usb audio card connected
sudo node aes67 -v -d 2 -c 2 -n test --address 192.168.0.100
_RtApiPulse::DeviceInfo pa_context_connect() failed: Connection refused
Selected ALSA as audio api
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (default), No such file or directory.
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (hw:2,0), No such device.
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (hw:3,0), No such device.
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (default), No such file or directory.
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (hw:2,0), No such device.
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (hw:3,0), No such device.
Selected device hw:ICUSBAUDIO7D,0 with 2 input channels
Selected 239.69.0.100 as RTP multicast address.
Opening audio stream.
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (default), No such file or directory.
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (hw:2,0), No such device.
RtApiAlsa::getDeviceInfo: snd_pcm_open error for device (hw:3,0), No such device.
Trying to sync to PTP master.
Could not sync to PTP master. Aborting._
Any suggestions or how to combine these 2 programs?
I have PTP installed and bound to the eth0.
Why am I still getting this error ?
root@x92f3371a9a4f:/usr/src/aes67-sender# ethtool -T eth0
Time stamping parameters for eth0:
Capabilities:
hardware-transmit (SOF_TIMESTAMPING_TX_HARDWARE)
software-transmit (SOF_TIMESTAMPING_TX_SOFTWARE)
hardware-receive (SOF_TIMESTAMPING_RX_HARDWARE)
software-receive (SOF_TIMESTAMPING_RX_SOFTWARE)
software-system-clock (SOF_TIMESTAMPING_SOFTWARE)
hardware-raw-clock (SOF_TIMESTAMPING_RAW_HARDWARE)
PTP Hardware Clock: 0
Hardware Transmit Timestamp Modes:
off (HWTSTAMP_TX_OFF)
on (HWTSTAMP_TX_ON)
Hardware Receive Filter Modes:
none (HWTSTAMP_FILTER_NONE)
all (HWTSTAMP_FILTER_ALL)
ptpv1-l4-sync (HWTSTAMP_FILTER_PTP_V1_L4_SYNC)
ptpv1-l4-delay-req (HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ)
ptpv2-l4-sync (HWTSTAMP_FILTER_PTP_V2_L4_SYNC)
ptpv2-l4-delay-req (HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ)
ptpv2-l2-sync (HWTSTAMP_FILTER_PTP_V2_L2_SYNC)
ptpv2-l2-delay-req (HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ)
ptpv2-event (HWTSTAMP_FILTER_PTP_V2_EVENT)
ptpv2-sync (HWTSTAMP_FILTER_PTP_V2_SYNC)
ptpv2-delay-req (HWTSTAMP_FILTER_PTP_V2_DELAY_REQ)
root@x92f3371a9a4f:/usr/src/aes67-sender#
It is currently not possible to run aes67-sender without PTP master. RFC7273 allows to implement a ts-refclk:ptp=traceable
which could be implemented to use aes67-sender without a PTP master.
Hi!
I tried using this sender with VB-AUDIO virtual audio interface, and I get crackling and buffering issues in AES67 receiver. I haven't yet tried to eliminate this problem by trying a hardware sound interface.
Interesting thing is that when on verbose, there are PTP related messages flowing. Are these normal?
Synced to <redacted> successfully
Starting SAP annoucements and audio stream.
Resycing PTP and RTP timestamp. Offset was 12.021ms.
Resycing PTP and RTP timestamp. Offset was 12.188ms.
Resycing PTP and RTP timestamp. Offset was 14.146ms.
Resycing PTP and RTP timestamp. Offset was 8.979ms.
Resycing PTP and RTP timestamp. Offset was 17.125ms.
Resycing PTP and RTP timestamp. Offset was 17.313ms.
Resycing PTP and RTP timestamp. Offset was 17.375ms.
Resycing PTP and RTP timestamp. Offset was 20.896ms.
Resycing PTP and RTP timestamp. Offset was 8.667ms.
Resycing PTP and RTP timestamp. Offset was 13.854ms.
Resycing PTP and RTP timestamp. Offset was 14.771ms.
Resycing PTP and RTP timestamp. Offset was 11.854ms.
Resycing PTP and RTP timestamp. Offset was 12.896ms.
Resycing PTP and RTP timestamp. Offset was 25.479ms.
Resycing PTP and RTP timestamp. Offset was 11.042ms.
Resycing PTP and RTP timestamp. Offset was 14.229ms.
Resycing PTP and RTP timestamp. Offset was 18.083ms.
Resycing PTP and RTP timestamp. Offset was 15.896ms.
Resycing PTP and RTP timestamp. Offset was 17.021ms.
Resycing PTP and RTP timestamp. Offset was 20.542ms.
Resycing PTP and RTP timestamp. Offset was 8.479ms.
Resycing PTP and RTP timestamp. Offset was 15.229ms.
Resycing PTP and RTP timestamp. Offset was 15.021ms.
Resycing PTP and RTP timestamp. Offset was 22.417ms.
Resycing PTP and RTP timestamp. Offset was 15.021ms.
Resycing PTP and RTP timestamp. Offset was 26.458ms.
Resycing PTP and RTP timestamp. Offset was 19.104ms.
Resycing PTP and RTP timestamp. Offset was 11.146ms.
Resycing PTP and RTP timestamp. Offset was 23.646ms.
Resycing PTP and RTP timestamp. Offset was 20.063ms.
Resycing PTP and RTP timestamp. Offset was 9.792ms.
When running
npm install
on raspberry pi 2b, I get this error message:
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '[email protected]',
npm WARN EBADENGINE required: { node: '>= 14.15.0' },
npm WARN EBADENGINE current: { node: 'v12.22.12', npm: '7.5.2' }
npm WARN EBADENGINE }
npm ERR! code 1
npm ERR! path /home/pkcubed/aes67-sender/node_modules/audify
npm ERR! command failed
npm ERR! command sh -c prebuild-install || npm run rebuild
npm ERR! > [email protected] rebuild
npm ERR! > cmake-js compile
npm ERR! prebuild-install warn install /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.32' not found (required by /home/pkcubed/aes67-sender/node_modules/audify/build/Release/audify.node)
npm ERR! /home/pkcubed/aes67-sender/node_modules/cmake-js/lib/buildSystem.js:15
npm ERR! return !!projectPkgJson?.binary?.napi_versions
npm ERR! ^
npm ERR!
npm ERR! SyntaxError: Unexpected token '.'
npm ERR! at wrapSafe (internal/modules/cjs/loader.js:915:16)
npm ERR! at Module._compile (internal/modules/cjs/loader.js:963:27)
npm ERR! at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
npm ERR! at Module.load (internal/modules/cjs/loader.js:863:32)
npm ERR! at Function.Module._load (internal/modules/cjs/loader.js:708:14)
npm ERR! at Module.require (internal/modules/cjs/loader.js:887:19)
npm ERR! at require (internal/modules/cjs/helpers.js:74:18)
npm ERR! at Object.<anonymous> (/home/pkcubed/aes67-sender/node_modules/cmake-js/lib/index.js:4:18)
npm ERR! at Module._compile (internal/modules/cjs/loader.js:999:30)
npm ERR! at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
npm ERR! npm ERR! code 1
npm ERR! npm ERR! path /home/pkcubed/aes67-sender/node_modules/audify
npm ERR! npm ERR! command failed
npm ERR! npm ERR! command sh -c cmake-js compile
npm ERR!
npm ERR! npm ERR! A complete log of this run can be found in:
npm ERR! npm ERR! /home/pkcubed/.npm/_logs/2023-10-06T02_08_45_884Z-debug.log
npm ERR! A complete log of this run can be found in:
npm ERR! /home/pkcubed/.npm/_logs/2023-10-06T02_08_47_944Z-debug.log
I was able to get this running on OSX. I have a dante primary and it seems to be able to see the AES67 stream (it's a dante DSP) but I'd prefer to configure the receive/transmit via dante controller and aes-sender is not showing up there under transmit. Any ideas?
Hey,
When starting the virtual sound card, i get this error:
$ node aes67 -a alsa -d 7 -n "Focusrite Scarlett 2i2"
events.js:174
throw er; // Unhandled 'error' event
^
Error: bind EACCES 0.0.0.0:319
at state.handle.lookup (dgram.js:242:18)
at process._tickCallback (internal/process/next_tick.js:63:19)
at Function.Module.runMain (internal/modules/cjs/loader.js:834:11)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
Emitted 'error' event at:
at state.handle.lookup (dgram.js:243:14)
at process._tickCallback (internal/process/next_tick.js:63:19)
[... lines matching original stack trace ...]
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.