J'ai posté sur le fil DIY un script python qui permet:
- de détecter la mtu efficace sur le réseau. Selon mes observations, tous les calculs de Yu se font sur la base de fichiers multiples de 48kHz. Que vous soyez avec MemoryPlay ou HQPlayer/Audirvana, je vous invite à exécuter un fichier multiple de 48kHz pour faire cette mesure.
Code :
sudo ./diretta_calc.py --detect-mtu
====================================================================================================
DETECTING MTU FROM LIVE DIRETTA TRAFFIC
====================================================================================================
Interface: enp5s0
EtherType: 0x88b6 (Diretta DDS)
Capture duration: 30 seconds (max)
Minimum packets: 5
⚠ NOTE: Diretta must be actively streaming audio for detection to work!
Running: sudo tcpdump -i enp5s0 -e -n -q -s 0 ether proto 0x88b6
Capturing packets... Press Ctrl+C to stop early
✓ Packet 100: 9024 bytes (most common: 9024 bytes, 100 times)
✓ Captured enough packets (100)
====================================================================================================
MTU DETECTION RESULTS
====================================================================================================
✓ Successfully analyzed 100 Diretta packets
  Capture duration: 0.4 seconds
  Detection method: Using MOST COMMON frame size (ignores outliers)
DETECTED MTU: 9024 bytes (confidence: Very High (matches standard MTU))
Frame Size Analysis:
  Most Common Size:  9024 bytes (100.0% of packets) ← MTU indicator
  Maximum frame:    9024 bytes
  Minimum frame:    9024 bytes
  Average frame:    9024 bytes
  Std deviation:    0 bytes
Size Distribution:
  9024 bytes:  100 packets (100.0%) ██████████████████████████████████████████████████ ← MOST COMMON (MTU basis)
====================================================================================================
? TIP: Use detected MTU with: python3 ./diretta_calc.py --mtu 9024
Sur mon réseau, on voir une MTU utile de 9024.
En exécutant ./diretta_calc.py --mtu 9024, j'obtiens les paramètres suivants:
Code :
./diretta_calc.py --mtu 9024
╔═══════════════════════════════════════════════════════════════════════════════╗
║              DIRETTA DDS CONFIGURATION & LOG ANALYSIS                        ║
║                    Optimized for High-Quality Reference Clocks                ║
║                                                                              ║
║  Focus: Clock STABILITY (phase noise/jitter), not just accuracy              ║
╚═══════════════════════════════════════════════════════════════════════════════╝
====================================================================================================
CONFIGURATION SUMMARY
====================================================================================================
Format: DSD
MTU: 9024 bytes
Base calculation: 48kHz (DSD256: 12,288,000 Hz)
Samples per frame: 36,000
Target CycleTime: 2930 μs (optimized for 48kHz)
CycleMinTime: 2915 μs (0.5% lower margin)
Network Buffering: periodMin=4, periodMax=8
Clock Sync Buffer: syncBufferCount=6
Total buffering: 14 periods
====================================================================================================
CONFIGURATION NOTES
====================================================================================================
  ✓ Using recommended optimized settings (4/8/6)
====================================================================================================
DIRETTA CONFIGURATION FILE
====================================================================================================
[global]
Interface=enp5s0
TargetProfileLimitTime=0
ThredMode=257
InfoCycle=100000
FlexCycle=max
CycleTime=2930
CycleMinTime=2915
Debug=stdout
periodMax=8
periodMin=4
periodSizeMax=8192
periodSizeMin=2048
syncBufferCount=6
alsaUnderrun=enable
unInitMemDet=disable
CpuSend=1
CpuOther=2
LatencyBuffer=0
qui fonctionnent bien.
Ensuite, le script permet d'évaluer la qualité de la transmission sur le réseau:
Code :
./diretta_calc.py --analyze-sync 1000
====================================================================================================
DIRETTA STABILITY ANALYSIS (LAST 1,000 LOG ENTRIES)
====================================================================================================
Service: diretta_sync_host
Generated: 2025-11-03 23:03:33
Analyzing logs...
✓ Logs captured. Performing analysis.
1. NETWORK TIMING JITTER (from 'cy=...' values)
----------------------------------------------------------------------------------------------------
  Assessment:        ✓ Good (IQR < 5μs)
  Samples found:      1,000
  Average Cycle:      2932.308 μs
  Standard Deviation: 4.885 μs  <- (primary indicator of stability)
  Interquartile Range (IQR): 4.296 μs  <- (robust jitter measurement)
  Min / Max Cycle:    2917.784 μs / 2945.710 μs
  Peak-to-Peak Range: 27.927 μs
----------------------------------------------------------------------------------------------------
Faites-moi part de vos commentaires