INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Analog and DLNA wifi speaker out of sync  (Read 2258 times)

ohohyodasoda

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 50
  • nothing more to say...
Analog and DLNA wifi speaker out of sync
« on: March 27, 2021, 11:12:20 pm »

My analog audio output to my analog stereo system, and my wireless WIFI speaker get out of sync.

I have "player" and "wifi speaker" linked together in "Group"  "player" and "Wifi Speaker" are associated with the same playlist. When I select "Overview" I can see that the same playlist is being used by both "player" and "wifi speaker"  When I start playing the first track, the audio from both my analog stereo system and the wifi speaker is pretty much in sync.  As subsequent tracks in the playlist start the analog audio and the wifi speaker get progressively farther out of sync.  By the time the 3rd track starts the delay is in excess of 1 second.

If I watch the track listings in "Overview" and closely watch both track listings as the each track starts, you can see that there is a delay: that is to say "player" and "wifi speaker" do not start the next track at exactly the same instant.  As a result, the analog output and the DLNA audio stream get farther and farther out of sync as you move down through the playlist.

I have tried to synchronize using the "adjust link timing" feature but that only solves the issue temporarily on the track currently playing; and when that track ends and the next one starts, the next track goes out of sync again.

Perhaps I am trying to go about this in the wrong way.  I am by no means an MC user that has an in depth understand of how MC works so maybe I am trying to do this with the wrong approach.

Any help would be appreciated to figure out how to get analog audio out and home network stream to stay in sync.

Thanks in advance!

my system:


Code: [Select]
Library
    Total files: 4,903
    Audio files: 4,903
    Image files: 0
    Video files: 0
    Other files: 0
Processing
    Thumbnails built: 100% (4903 of 4903)
    Audio analyzed: 1% (32 of 4903)
Background Tools Running
    No tools currently running
Power
    Playback (disable automatic sleep)
Media Center
    Version: 25.0.114 Registered
    Install path: C:\Program Files (x86)\J River\Media Center 25\
    Interface plug-ins: Interface Plugins: TiVo Server (not running)
    JRMark: never run
    Memory used: 27.6 MB memory
    Handles used: 574 handles
Advanced System Info
    Memory & CPU
        CPU features: MMX, SSE2, SSE3, SSSE3, SSE4.1, AVX
        Free Physical Memory: 13.5 GB
        Total Logical Cores: 8
        Total Memory: 15.9 GB
    Operating System
        Microsoft Windows 7 64-bit
    Computer
        ACPI x64-based PC (driver 6.1.7600.16385)
    Disk drives
        Generic- Compact Flash USB Device (driver 6.1.7601.19133)
        Generic- MS/MS-Pro USB Device (driver 6.1.7601.19133)
        Generic- SD/MMC USB Device (driver 6.1.7601.19133)
        Generic- SM/xD-Picture USB Device (driver 6.1.7601.19133)
        IOMEGA ZIP 100 SCSI Disk Device (driver 6.1.7601.19133)
        SanDisk SDSSDA-1T00 SATA Disk Device (driver 6.1.7601.19133)
        WDC WD10 EZRZ-22HTKB0 SATA Disk Device (driver 6.1.7601.19133)
        WDC WD16 00AAJS-75PSA0 SATA Disk Device (driver 6.1.7601.19133)
    Display adapters
        NVIDIA GeForce 210  (driver 21.21.13.4201)
    DVD/CD-ROM drives
        CD-ROM Drive (driver 6.1.7601.17514)
        CD-ROM Drive (driver 6.1.7601.17514)
    Floppy disk drives
        TEAC USB UF000x USB Device (driver 6.1.7600.16385)
    Human Interface Devices
        HID-compliant device (driver 6.1.7601.24386)
        USB Input Device (driver 6.1.7601.24386)
        USB Input Device (driver 6.1.7601.24386)
    IDE ATA/ATAPI controllers
        AMD SATA Controller (driver 1.2.1.331)
    Keyboards
        Standard PS/2 Keyboard (driver 6.1.7601.17514)
    Mice and other pointing devices
        HID-compliant mouse (driver 6.1.7600.16385)
    Monitors
        Generic PnP Monitor (driver 6.1.7601.24521)
    Network adapters
        Realtek PCIe GBE Family Controller (driver 7.67.1226.2012)
    Portable Devices
        F:\ (driver 6.1.7600.16385)
        I:\ (driver 6.1.7600.16385)
        J:\ (driver 6.1.7600.16385)
        K:\ (driver 6.1.7600.16385)
        L:\ (driver 6.1.7600.16385)
    Ports (COM & LPT)
        Communications Port (COM1) (driver 6.1.7600.16385)
    Processors
        AMD FX(tm)-8350 Eight-Core Processor            (driver 6.1.7601.24540)
        AMD FX(tm)-8350 Eight-Core Processor            (driver 6.1.7601.24540)
        AMD FX(tm)-8350 Eight-Core Processor            (driver 6.1.7601.24540)
        AMD FX(tm)-8350 Eight-Core Processor            (driver 6.1.7601.24540)
        AMD FX(tm)-8350 Eight-Core Processor            (driver 6.1.7601.24540)
        AMD FX(tm)-8350 Eight-Core Processor            (driver 6.1.7601.24540)
        AMD FX(tm)-8350 Eight-Core Processor            (driver 6.1.7601.24540)
        AMD FX(tm)-8350 Eight-Core Processor            (driver 6.1.7601.24540)
    Sound, video and game controllers
        ASUS Xonar DG Audio Device (driver 7.12.8.1794)
        High Definition Audio Device (driver 6.1.7601.24519)
        High Definition Audio Device (driver 6.1.7601.24519)
        High Definition Audio Device (driver 6.1.7601.24519)
        High Definition Audio Device (driver 6.1.7601.24519)
        PlayOn Virtual Audio Device (driver 6.0.6000.5)
        Realtek High Definition Audio (driver 6.0.1.7023)
    Storage controllers
        Windows Vista X64 Promise Ultra133 TX2 (tm) IDE Controller (driver 2.1.0.3)
    Storage volume shadow copies
        Generic volume shadow copy (driver 6.1.7600.16385)
        Generic volume shadow copy (driver 6.1.7600.16385)
        Generic volume shadow copy (driver 6.1.7600.16385)
    System devices
        ACPI Fixed Feature Button (driver 6.1.7601.24441)
        ACPI Power Button (driver 6.1.7601.24441)
        AMD SMBus (driver 5.12.0.31)
        ATI I/O Communications Processor PCI Bus Controller (driver 6.1.7601.24441)
        Composite Bus Enumerator (driver 6.1.7601.17514)
        Direct memory access controller (driver 6.1.7601.24441)
        File as Volume Driver (driver 6.1.7600.16385)
        High Definition Audio Controller (driver 6.1.7601.17514)
        High Definition Audio Controller (driver 6.1.7601.17514)
        High precision event timer (driver 6.1.7601.24441)
        Microsoft ACPI-Compliant Embedded Controller (driver 6.1.7601.24441)
        Microsoft ACPI-Compliant System (driver 6.1.7601.24056)
        Microsoft System Management BIOS Driver (driver 6.1.7601.24441)
        Microsoft Virtual Drive Enumerator Driver (driver 6.1.7601.24441)
        Microsoft Windows Management Interface for ACPI (driver 6.1.7601.24056)
        Microsoft Windows Management Interface for ACPI (driver 6.1.7601.24056)
        Motherboard resources (driver 6.1.7601.24441)
        Motherboard resources (driver 6.1.7601.24441)
        Motherboard resources (driver 6.1.7601.24441)
        Motherboard resources (driver 6.1.7601.24441)
        Motherboard resources (driver 6.1.7601.24441)
        Motherboard resources (driver 6.1.7601.24441)
        Motherboard resources (driver 6.1.7601.24441)
        Numeric data processor (driver 6.1.7601.24441)
        PCI bus (driver 6.1.7601.24441)
        PCI standard host CPU bridge (driver 6.1.7601.24441)
        PCI standard host CPU bridge (driver 6.1.7601.24441)
        PCI standard host CPU bridge (driver 6.1.7601.24441)
        PCI standard host CPU bridge (driver 6.1.7601.24441)
        PCI standard host CPU bridge (driver 6.1.7601.24441)
        PCI standard host CPU bridge (driver 6.1.7601.24441)
        PCI standard host CPU bridge (driver 6.1.7601.24441)
        PCI standard ISA bridge (driver 6.1.7601.24441)
        PCI standard PCI-to-PCI bridge (driver 6.1.7601.24441)
        PCI standard PCI-to-PCI bridge (driver 6.1.7601.24441)
        PCI standard PCI-to-PCI bridge (driver 6.1.7601.24441)
        PCI standard PCI-to-PCI bridge (driver 6.1.7601.24441)
        Plug and Play Software Device Enumerator (driver 6.1.7601.24441)
        Programmable interrupt controller (driver 6.1.7601.24441)
        Remote Desktop Device Redirector Bus (driver 6.1.7600.16385)
        System board (driver 6.1.7601.24441)
        System board (driver 6.1.7601.24441)
        System CMOS/real time clock (driver 6.1.7601.24441)
        System speaker (driver 6.1.7601.24441)
        System timer (driver 6.1.7601.24441)
        Terminal Server Keyboard Driver (driver 6.1.7601.24441)
        Terminal Server Mouse Driver (driver 6.1.7601.24441)
        UMBus Enumerator (driver 6.1.7601.17514)
        UMBus Enumerator (driver 6.1.7601.17514)
        UMBus Root Bus Enumerator (driver 6.1.7601.17514)
        Volume Manager (driver 6.1.7601.24441)
    Universal Serial Bus controllers
        ASMedia XHCI Controller (driver 1.16.12.0)
        ASMedia XHCI Controller (driver 1.16.12.0)
        No Printer Attached (driver 6.1.7600.16385)
        Standard Enhanced PCI to USB Host Controller (driver 6.1.7601.24138)
        Standard Enhanced PCI to USB Host Controller (driver 6.1.7601.24138)
        Standard Enhanced PCI to USB Host Controller (driver 6.1.7601.24138)
        Standard OpenHCD USB Host Controller (driver 6.1.7601.24138)
        Standard OpenHCD USB Host Controller (driver 6.1.7601.24138)
        Standard OpenHCD USB Host Controller (driver 6.1.7601.24138)
        Standard OpenHCD USB Host Controller (driver 6.1.7601.24138)
        TEAC USB Floppy (driver 6.1.7601.19144)
        USB Composite Device (driver 6.1.7601.24138)
        USB Mass Storage Device (driver 6.1.7601.19144)
        USB Printing Support (driver 6.1.7600.16385)
        USB Root Hub (driver 1.16.12.0)
        USB Root Hub (driver 1.16.12.0)
        USB Root Hub (driver 6.1.7601.24138)
        USB Root Hub (driver 6.1.7601.24138)
        USB Root Hub (driver 6.1.7601.24138)
        USB Root Hub (driver 6.1.7601.24138)
        USB Root Hub (driver 6.1.7601.24138)
        USB Root Hub (driver 6.1.7601.24138)
        USB Root Hub (driver 6.1.7601.24138)
Logged

wer

  • Citizen of the Universe
  • *****
  • Posts: 2640
Re: Analog and DLNA wifi speaker out of sync
« Reply #1 on: March 27, 2021, 11:32:33 pm »

It could be a tough problem to solve.  I don't normally respond to DLNA related questions, but I am interested in zone synchronization as well, so I thought I would chime in for what it's worth.

Since one of your outputs is DLNA and the other is not, the problem may be intractable. You would have a much greater chance of success if you could run direct to those speakers somehow instead of DLNA. The analog output will play exactly what MC says, exactly when it's told to do it.  The DLNA device will operate, to an certain extent, on its own schedule. There will always be some latency there that is not controllable.

You give a lot of info about your PC, but the one thing you left out is what the "wifi speakers" actually are.  Do you have any other means of getting a signal to them besides DLNA, like either a cable or a proprietary wireless driver (like KEF had)?  EDIT: I found your other post, where you say you have the Hitachi W200.  You will probably achieve better synchronization with less latency, albeit with worse sound quality, if you send to the W200 via Bluetooth instead of DLNA. (If you're in range that is. Check into it at least.) That speaker also has a 3.5mm aux input, so you could run a cable to it, or you could hook it up to a better low-latency wireless audio transceiver. Such devices exist. All those options would outperform DLNA. 

Hopefully someone else might come along with better ideas, but I can only offer a couple of things...

1. Read the recommended steps in this post and apply them:
https://yabb.jriver.com/interact/index.php?topic=115328.0
If you have to deviate from any of them, report that so that people know what you're doing.

2. As is mentioned briefly in that article, output at the same sample rate to both devices. Your wifi speakers probably resample everything, so you might need to learn what their internal resampling rate is, output at that, and do the same with your analog output.

You might think unnecessary resampling is not ideal for audio quality, and you'd be right, but in this case synchronization takes precedence and you can get a little bit of drift due to different clock rates. That drift will increase over time, which sounds like what you're describing.  So making sure you're running at the same sample rate on both outputs will minimize that to the extent possible.

3. As I said above, try Bluetooth to your speaker instead of DLNA.  It will probably be much more responsive that way.

I'll mention that when I did a similar stunt a while back, I ended up running quite a long audio cable through the crawlspace under a house in order to get a direct connection to some speakers, because the complications (like what you are seeing) from trying to do one zone wireless and keep them in sync were just too much. It was a pain running that cable, but I've never regretted it.

Anyway, that's all I have.  Good luck, and I'll be interested to hear how well you can do.
Logged

ohohyodasoda

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 50
  • nothing more to say...
Re: Analog and DLNA wifi speaker out of sync
« Reply #2 on: March 28, 2021, 02:16:54 am »

Thanks for the great suggestions.  I tried everything that was suggested, and I got the same results with each change.  I am very pleased with the performance of the HItachi W200.  Gives a lot of bang for the buck and works well and functions as advertised.  It uses a cell phone app called Qualcomm All Play which allows you to select tracks from what is offered by the network DLNA server, so what ever MC serves to the network, the cell phone can see and select to be played on the W200.  Direct wiring will not be suitable in the situation I am working with.  I want to be able to move this speaker around from patio to other locations around my home.  IE: not a fixed location.  IN addition Bluetooth is also not an option because I am using a desktop computer without any Bluetooth capability.

Edit:  Just to make clear,  I am not using the cell phone app in conjunction with the problem of sync described herein.  The sync issue is strictly when playing using the MC program with Player and Wifi Speaker linked in MC.

All that said, it is my guess that the analog and the DLNA stream are processed independently of each other in MC.  It appears that when MC switches from the end of one track, and seeks to locate the next track in the library, it is done in a separate operation for the analog and for the network stream.  AS a result "player" gets a small head start over "wifi speaker" or vise versa.  I even played around with buffering duration and that made no difference.

My guess is that the MC program would have to have some sort of sync delay added to the code to make sure both analog and network data were fetched and ready to process, and then have both feeds started simultaneously.   The reason I say this is because, if I "stop" playback, and then manually start a new track by double clicking on a track in the list, both the analog and network starts and continues to play IN SYNC.  However if I allow MC to automatically start a subsequent track, the analog and the network feed will be slightly out of sync and this will get progressively worse as subsequent tracks start.  Only the first track initiated manually by the user seems to sync up.  I also noticed that if I use the "next" arrow to select the next track on the list that there will be no delay.  Seems to just have a sync issue when MC ends the current track and starts the next track itself.  The sync issue is definitely only a problem when MC starts the next track automatically.  So I do not think this is an issue of some inherent incompatibility between the analog output and the DLNA stream being sent to the wifi speaker.

So I think unless JRiver can address this issue, I guess I am out of options at this point.

However I did have one other idea and I don't know if this is even possible: and that was to use some sort of DLNA enabled wifi Digital to Analog converter to feed my Pioneer stereo system instead of using a hardwired analog feed.  I figure if all my audio systems are fed by DLNA wifi devices on the network, all the signals would be in sync. Would you possibly know if such a device exists?

Thanks again for your kind assistance!
Logged

wer

  • Citizen of the Universe
  • *****
  • Posts: 2640
Re: Analog and DLNA wifi speaker out of sync
« Reply #3 on: March 28, 2021, 02:43:06 am »

I figure if all my audio systems are fed by DLNA wifi devices on the network, all the signals would be in sync.

Unfortunately that's not true.

I think you're always going to have sync problems with DLNA, due to the way renderers operate. If you think the problem is with MC, try a different software package and see if you're right.  But I would suggest that you research wireless audio transmitter/receivers like the TP-WT02 and leverage that aux port, so that you can avoid DLNA and have controllable latency. Or, by the way, you can buy a USB Bluetooth transmitter for your desktop computer for a few dollars.

Maybe someone else will have better ideas.  Good luck.
Logged

AndrewFG

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3392
Re: Analog and DLNA wifi speaker out of sync
« Reply #4 on: March 31, 2021, 05:37:25 pm »

^
In DLNA v1 the only synchronisation mechanism is to send the Play() start command to two separate renderers at the same time. After that, each renderer will play out the track at its own rate. The longer the track the bigger the time difference. Certainly different makes & models of renderers will play out at different rates. Possibly two identical renderers might play out at the same rate, but even that is not 100% given.

In DLNA later versions of the specification, they introduced a new PlaySync() command that includes clock synchronisation mechanisms. However I have never seen any renderer from any manufacturer that actually implements that command.
Logged
Author of Whitebear Digital Media Renderer Analyser - http://www.whitebear.ch/dmra.htm
Author of Whitebear - http://www.whitebear.ch/mediaserver.htm
Pages: [1]   Go Up