hzeller / gmrender-resurrect

Resource efficient UPnP/DLNA renderer, optimal for Raspberry Pi, CuBox or a general MediaServer. Fork of GMediaRenderer to add some features to make it usable.
GNU General Public License v2.0
832 stars 202 forks source link

gmrender plays too fast #123

Closed bruxi closed 4 years ago

bruxi commented 7 years ago

Hi,

I'm having gmrender running on an Raspi 3 (built from jaeksch-fork) to play to a filesink from snapcast server. Everything works fine but the music plays a little too fast. My client from which I'm playing is BubbleUPNP, the music is served by BubbleUPNP server. When I play directly to the renderer installed on the Raspis in each room, the speed is ok.

Here's the log where you can see that there's a time drift:

INFO  [2017-03-19 23:07:01.867533 | transport] RelativeTimePosition: 0:00:01
INFO  [2017-03-19 23:07:02.869374 | transport] RelativeTimePosition: 0:00:02
INFO  [2017-03-19 23:07:03.871311 | transport] RelativeTimePosition: 0:00:03
INFO  [2017-03-19 23:07:04.873278 | transport] RelativeTimePosition: 0:00:04
INFO  [2017-03-19 23:07:05.875160 | transport] RelativeTimePosition: 0:00:05
INFO  [2017-03-19 23:07:06.376200 | transport] RelativeTimePosition: 0:00:06
INFO  [2017-03-19 23:07:07.378037 | transport] RelativeTimePosition: 0:00:07
INFO  [2017-03-19 23:07:08.379898 | transport] RelativeTimePosition: 0:00:08
INFO  [2017-03-19 23:07:09.381788 | transport] RelativeTimePosition: 0:00:09
INFO  [2017-03-19 23:07:10.383686 | transport] RelativeTimePosition: 0:00:10
INFO  [2017-03-19 23:07:11.385592 | transport] RelativeTimePosition: 0:00:11
INFO  [2017-03-19 23:07:11.886600 | transport] RelativeTimePosition: 0:00:12
INFO  [2017-03-19 23:07:12.888460 | transport] RelativeTimePosition: 0:00:13
INFO  [2017-03-19 23:07:13.890545 | transport] RelativeTimePosition: 0:00:14
INFO  [2017-03-19 23:07:14.892431 | transport] RelativeTimePosition: 0:00:15
INFO  [2017-03-19 23:07:15.894388 | transport] RelativeTimePosition: 0:00:16
INFO  [2017-03-19 23:07:16.896225 | transport] RelativeTimePosition: 0:00:17
INFO  [2017-03-19 23:07:17.397287 | transport] RelativeTimePosition: 0:00:18
INFO  [2017-03-19 23:07:18.399162 | transport] RelativeTimePosition: 0:00:19
INFO  [2017-03-19 23:07:19.401103 | transport] RelativeTimePosition: 0:00:20
INFO  [2017-03-19 23:07:20.403094 | transport] RelativeTimePosition: 0:00:21
INFO  [2017-03-19 23:07:21.404909 | transport] RelativeTimePosition: 0:00:22
INFO  [2017-03-19 23:07:22.406762 | transport] RelativeTimePosition: 0:00:23
INFO  [2017-03-19 23:07:22.907783 | transport] RelativeTimePosition: 0:00:24
INFO  [2017-03-19 23:07:23.909656 | transport] RelativeTimePosition: 0:00:25
INFO  [2017-03-19 23:07:24.911475 | transport] RelativeTimePosition: 0:00:26
INFO  [2017-03-19 23:07:25.913433 | transport] RelativeTimePosition: 0:00:27
INFO  [2017-03-19 23:07:26.915336 | transport] RelativeTimePosition: 0:00:28
INFO  [2017-03-19 23:07:27.917188 | transport] RelativeTimePosition: 0:00:29
INFO  [2017-03-19 23:07:28.418193 | transport] RelativeTimePosition: 0:00:30
INFO  [2017-03-19 23:07:29.420073 | transport] RelativeTimePosition: 0:00:31
INFO  [2017-03-19 23:07:30.421925 | transport] RelativeTimePosition: 0:00:32
INFO  [2017-03-19 23:07:31.423891 | transport] RelativeTimePosition: 0:00:33
INFO  [2017-03-19 23:07:32.425765 | transport] RelativeTimePosition: 0:00:34
INFO  [2017-03-19 23:07:33.427650 | transport] RelativeTimePosition: 0:00:35
INFO  [2017-03-19 23:07:33.928647 | transport] RelativeTimePosition: 0:00:36
INFO  [2017-03-19 23:07:34.930518 | transport] RelativeTimePosition: 0:00:37
INFO  [2017-03-19 23:07:35.932386 | transport] RelativeTimePosition: 0:00:38
INFO  [2017-03-19 23:07:36.934418 | transport] RelativeTimePosition: 0:00:39
INFO  [2017-03-19 23:07:37.936238 | transport] RelativeTimePosition: 0:00:40
INFO  [2017-03-19 23:07:38.938116 | transport] RelativeTimePosition: 0:00:41
INFO  [2017-03-19 23:07:39.439123 | transport] RelativeTimePosition: 0:00:42
INFO  [2017-03-19 23:07:40.440958 | transport] RelativeTimePosition: 0:00:43
INFO  [2017-03-19 23:07:41.442803 | transport] RelativeTimePosition: 0:00:44
INFO  [2017-03-19 23:07:42.444758 | transport] RelativeTimePosition: 0:00:45
INFO  [2017-03-19 23:07:43.446699 | transport] RelativeTimePosition: 0:00:46
INFO  [2017-03-19 23:07:44.448614 | transport] RelativeTimePosition: 0:00:47
INFO  [2017-03-19 23:07:44.949652 | transport] RelativeTimePosition: 0:00:48
INFO  [2017-03-19 23:07:45.951627 | transport] RelativeTimePosition: 0:00:49
INFO  [2017-03-19 23:07:46.953631 | transport] RelativeTimePosition: 0:00:50
INFO  [2017-03-19 23:07:47.955589 | transport] RelativeTimePosition: 0:00:51
INFO  [2017-03-19 23:07:48.957418 | transport] RelativeTimePosition: 0:00:52
INFO  [2017-03-19 23:07:49.959300 | transport] RelativeTimePosition: 0:00:53
INFO  [2017-03-19 23:07:50.460357 | transport] RelativeTimePosition: 0:00:54
INFO  [2017-03-19 23:07:51.462199 | transport] RelativeTimePosition: 0:00:55
INFO  [2017-03-19 23:07:52.464254 | transport] RelativeTimePosition: 0:00:56
INFO  [2017-03-19 23:07:53.466406 | transport] RelativeTimePosition: 0:00:57
INFO  [2017-03-19 23:07:54.468246 | transport] RelativeTimePosition: 0:00:58
INFO  [2017-03-19 23:07:55.470208 | transport] RelativeTimePosition: 0:00:59
INFO  [2017-03-19 23:07:55.971198 | transport] RelativeTimePosition: 0:01:00
INFO  [2017-03-19 23:07:56.973166 | transport] RelativeTimePosition: 0:01:01
INFO  [2017-03-19 23:07:57.975120 | transport] RelativeTimePosition: 0:01:02
INFO  [2017-03-19 23:07:58.977074 | transport] RelativeTimePosition: 0:01:03
INFO  [2017-03-19 23:07:59.979005 | transport] RelativeTimePosition: 0:01:04
INFO  [2017-03-19 23:08:00.983819 | transport] RelativeTimePosition: 0:01:05
INFO  [2017-03-19 23:08:01.484828 | transport] RelativeTimePosition: 0:01:06
INFO  [2017-03-19 23:08:02.486703 | transport] RelativeTimePosition: 0:01:07
INFO  [2017-03-19 23:08:03.488589 | transport] RelativeTimePosition: 0:01:08
INFO  [2017-03-19 23:08:04.490433 | transport] RelativeTimePosition: 0:01:09
INFO  [2017-03-19 23:08:05.492262 | transport] RelativeTimePosition: 0:01:10
INFO  [2017-03-19 23:08:06.497785 | transport] RelativeTimePosition: 0:01:11
INFO  [2017-03-19 23:08:06.998764 | transport] RelativeTimePosition: 0:01:12
INFO  [2017-03-19 23:08:08.000808 | transport] RelativeTimePosition: 0:01:13
INFO  [2017-03-19 23:08:09.003889 | transport] RelativeTimePosition: 0:01:14
INFO  [2017-03-19 23:08:10.005740 | transport] RelativeTimePosition: 0:01:15
INFO  [2017-03-19 23:08:11.007614 | transport] RelativeTimePosition: 0:01:16
INFO  [2017-03-19 23:08:12.009583 | transport] RelativeTimePosition: 0:01:17
INFO  [2017-03-19 23:08:12.510594 | transport] RelativeTimePosition: 0:01:18
INFO  [2017-03-19 23:08:13.512588 | transport] RelativeTimePosition: 0:01:19
INFO  [2017-03-19 23:08:14.516371 | transport] RelativeTimePosition: 0:01:20
INFO  [2017-03-19 23:08:15.518411 | transport] RelativeTimePosition: 0:01:21
INFO  [2017-03-19 23:08:16.520236 | transport] RelativeTimePosition: 0:01:22
INFO  [2017-03-19 23:08:17.522138 | transport] RelativeTimePosition: 0:01:23
INFO  [2017-03-19 23:08:18.023213 | transport] RelativeTimePosition: 0:01:24
INFO  [2017-03-19 23:08:19.025055 | transport] RelativeTimePosition: 0:01:25
INFO  [2017-03-19 23:08:20.026926 | transport] RelativeTimePosition: 0:01:26
INFO  [2017-03-19 23:08:21.028809 | transport] RelativeTimePosition: 0:01:27
INFO  [2017-03-19 23:08:22.030680 | transport] RelativeTimePosition: 0:01:28
INFO  [2017-03-19 23:08:23.032573 | transport] RelativeTimePosition: 0:01:29
INFO  [2017-03-19 23:08:23.533641 | transport] RelativeTimePosition: 0:01:30
INFO  [2017-03-19 23:08:24.535492 | transport] RelativeTimePosition: 0:01:31
INFO  [2017-03-19 23:08:25.537320 | transport] RelativeTimePosition: 0:01:32
INFO  [2017-03-19 23:08:26.539148 | transport] RelativeTimePosition: 0:01:33
INFO  [2017-03-19 23:08:27.142669 | transport] TransportState: STOPPED
INFO  [2017-03-19 23:08:27.142865 | transport] CurrentTransportActions: PLAY,SEEK
INFO  [2017-03-19 23:08:27.143224 | transport] LastChange: <?xml version="1.0"?>
<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/">
<InstanceID val="0">
<TransportState val="STOPPED"></TransportState>
<CurrentTransportActions val="PLAY,SEEK"></CurrentTransportActions>
</InstanceID>
</Event>

gmrender is started like this:

/usr/local/bin/gmediarender -d -f Multiroom -u f7cbc54e571df7ceb530e2cd23952658 --gstout-initial-volume-db=-10 --logfile /var/log/gmediarender.log --gstout-audiopipe audioresample ! audioconvert ! audio/x-raw,rate=44100,channels=2,format=S16LE ! filesink location=/tmp/snapfifo Many thanks in advance!

jaecksch commented 7 years ago

It seems that snapcast is running with 48kHz the time shift is about the ratio 44,1/ 48. Please check the settings of snacpcast, or try 'rate=48000'

bruxi commented 7 years ago

That did the trick, thanks a lot for the immediate reply