Need help with audiostreams through my VPN

Oldhabbits

Active Member
Joined
May 24, 2021
Messages
121
Reaction score
83
Credits
830
Hi fellows,
I have on-going problems with audiostreams (radio) through Rhythmbox or MPV on the command line.
Whenever I'm connected with my Windscribe VPN, the audio stream quits after 90 seconds. The time out is always 90 seconds !

I'm using the original windscribe-cli for linux to connect: windscribe-cli/buster,now 1.4-51 amd64 [installed], Windscribe command line interface

As I'm using Linux Debian 11 as my main OS, I'm NOT using any other anti-virus, anti-malware nor any kind of extra firewall.
It used to work with Linux Mint and Debian 10 just fine before, it is after my upgrade to Debian 11 the issues started.

Strange that the "time-out" is always 90 seconds, I've no idea witch timer is set to that time-frame.
When started on a command line, I do see an ffmpeg error after 90 seconds -> "ffmpeg] tls: Error in the pull function."
After that error, no stream is downloading anymore, the mediaplayer client empties its cache, and the music ends...
I've been in contact with the Windscribe helpdesk for several days now, they fully understand the problem but have no clue what's happening :-(

Steps to reproduce:

# connect to windscribe:

Connecting to Netherlands Amsterdam Red Light (UDP:443)
Firewall Enabled
Connected to Netherlands Amsterdam Red Light
Your IP changed from 109.132.244.4 to 72.11.157.80

# start audio stream: eddy@imac:~$ mpv https://playerservices.streamtheworld.com/api/livestream-redirect/NOSTALGIEWHATAFEELING.mp3

# Output in terminal:

(+) Audio --aid=1 (mp3 2ch 44100Hz)
AO: [pulse] 44100Hz stereo 2ch float
A: 00:00:00 / 00:00:10 (6%) Cache: 9.8s/424KB

File tags:
icy-title: Joss Stone - You Had Me
A: 00:01:29 / 00:01:38 (90%) Cache: 9.5s/407KB
[ffmpeg] tls: Error in the pull function.

A: 00:01:38 / 00:01:38 (100%) Cache: 0.0s
Exiting... (End of file)

# now the music has stopped ! :-(

When I'm not connected to windscribe, no errors occur and the music plays for hours...

With kind seasonal greetings,
Eddy Praet
 


Extra system info of my system (as required by this forum ;) ) :
Code:
System:
  Kernel: 4.19.222-0419222-generic x86_64 bits: 64 compiler: gcc v: 9.3.0
    Desktop: KDE Plasma 5.23.4 Distro: Debian GNU/Linux 11 (bullseye)
Machine:
  Type: Desktop System: Apple product: iMac16,2 v: 1.0
    serial: <superuser required>
  Mobo: Apple model: Mac-FFE5EF870D7BA81A v: iMac16,2
    serial: <superuser required> UEFI: Apple v: 428.60.3.0.0 date: 10/27/2021
CPU:
  Info: quad core model: Intel Core i5-5675R bits: 64 type: MCP
    arch: Broadwell rev: 1 cache: L1: 256 KiB L2: 1024 KiB L3: 4 MiB
  Speed (MHz): avg: 3093 high: 3094 min/max: 800/3600 cores: 1: 3093
    2: 3093 3: 3093 4: 3094 bogomips: 24742
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
  Device-1: Intel Iris Pro Graphics 6200 vendor: Apple driver: i915 v: kernel
    bus-ID: 00:02.0
  Device-2: Apple FaceTime HD Camera (Built-in) type: USB driver: uvcvideo
    bus-ID: 1-7:3
  Display: x11 server: X.Org 1.20.13 driver: loaded: modesetting
    unloaded: fbdev,vesa resolution: 3840x2160~60Hz
  OpenGL: renderer: Mesa Intel Iris Pro Graphics 6200 (BDW GT3)
    v: 4.6 Mesa 21.2.6 direct render: Yes
Audio:
  Device-1: Intel Broadwell-U Audio vendor: Apple driver: snd_hda_intel
    v: kernel bus-ID: 00:03.0
  Device-2: Intel 9 Series Family HD Audio driver: snd_hda_intel v: kernel
    bus-ID: 00:1b.0
  Sound Server-1: ALSA v: k4.19.222-0419222-generic running: yes
  Sound Server-2: PulseAudio v: 15.0 running: yes
Network:
  Device-1: Broadcom BCM43602 802.11ac Wireless LAN SoC vendor: Apple
    driver: brcmfmac v: kernel bus-ID: 03:00.0
  IF: wlp3s0 state: up mac: <filter>
  Device-2: Broadcom NetXtreme BCM57766 Gigabit Ethernet PCIe driver: tg3
    v: 3.137 port: N/A bus-ID: 04:00.0
  IF: eno1 state: down mac: <filter>
Bluetooth:
  Device-1: Apple Bluetooth USB Host Controller type: USB
    driver: btusb,hid-generic,usbhid bus-ID: 1-8:5
  Report: hciconfig ID: hci0 rfk-id: 0 state: up address: <filter>
    bt-v: 2.1 lmp-v: 4.2
Drives:
  Local Storage: total: 1.36 TiB used: 126.21 GiB (9.0%)
  ID-1: /dev/sda type: USB vendor: Samsung model: Portable SSD T3
    size: 465.76 GiB
  ID-2: /dev/sdb vendor: Apple model: HDD HTS541010A9E662 size: 931.51 GiB
Partition:
  ID-1: / size: 182.36 GiB used: 126.21 GiB (69.2%) fs: ext4 dev: /dev/sda3
Swap:
  ID-1: swap-1 type: file size: 4 GiB used: 33.8 MiB (0.8%) file: /swapfile
Sensors:
  System Temperatures: cpu: 53.0 C mobo: N/A
  Fan Speeds (RPM): N/A
Info:
  Processes: 205 Uptime: 4h 22m Memory: 7.66 GiB used: 5.75 GiB (75.1%)
  Init: systemd runlevel: 5 Compilers: gcc: 11.2.0 Packages: 2402 Shell: Bash
  v: 5.1.12 inxi: 3.3.11

Thanks in advance for any help !

Eddy
 
Some thoughts...

It may be that the VPN provider doesn't like that sort of behavior (or, more likely, doesn't recognize it in their traffic shaping process) and kicks it to the curb after 90 seconds. They may not realize that it is a relatively low-bandwidth use and just don't have the rules in place to deal with it, so they kick you out after a set amount of time. That time could be the leeway time that they give you for the traffic to start matching specific patterns.

This doesn't have to mean that they're doing anything like deep packet inspection, it just means they're automatically looking at the behavior of the traffic and making automatic decisions based on that behavior.
 
It used to work with Linux Mint and Debian 10 just fine before, it is after my upgrade to Debian 11 the issues started.

When you used Debian 10, did you use the deb-multimedia Repository?

What version number of ffmpeg have you got?
 
I have a life-time subscription to Windscribe myself, I can try it out for you when I have time later.
 
When you used Debian 10, did you use the deb-multimedia Repository?

What version number of ffmpeg have you got?

When I used Debian 10, I used the "normal" / standard deb repo's, for as far as I know ?
The version number for FFMPEG:


Bash:
eddy@imac:~$ apt policy ffmpeg
ffmpeg:
  Geïnstalleerd: 7:4.4.1-2+b1
  Kandidaat:     7:4.4.1-2+b1
  Versietabel:
 *** 7:4.4.1-2+b1 500
        500 http://deb.debian.org/debian testing/main amd64 Packages
        100 /var/lib/dpkg/status
     7:4.3.3-0+deb11u1 500
        500 http://deb.debian.org/debian bullseye/main amd64 Packages
        500 http://security.debian.org bullseye-security/main amd64 Packages
I tried both versions already, didn't make any difference...
Thanks for looking into this !
Eddy
 
I have a life-time subscription to Windscribe myself, I can try it out for you when I have time later.
That would be great, thanks !!!
Eddy
 
This doesn't have to mean that they're doing anything like deep packet inspection, it just means they're automatically looking at the behavior of the traffic and making automatic decisions based on that behavior.

The problem only arrived after the update to Debian 11, though. It worked before, and I just found out, it also works when I dualboot my machine to MacOS High Sierra ! It must be something / somewhere in Debian 11, I guess....
Eddy
 
That would be great, thanks !!!
Eddy
It will be this evening after work at the earliest. I run Arch myself but I can also create a vm with Debian 11 and try it there also if that helps.
 
Last edited:
I tried it as well, however I didn't use the windscribe-cli because it mentions that it's legacy and the AUR package hasn't had an update since somewhere in 2019 so I used imported an openvpn configuration though networkmanager. However I got the same as you when not connected to Windscribe it goes on forever, when connected to Windscribe after about 1 minute and 30 second it cuts off. I tried it on different ports as well as tcp and udp as well with two different programs mpv and vlc.
Port: 443/udp:

mpv https://playerservices.streamtheworld.com/api/livestream-redirect/NOSTALGIEWHATAFEELING.mp3
(+) Audio --aid=1 (mp3 2ch 44100Hz)
AO: [pulse] 44100Hz stereo 2ch float
A: 00:00:00 / 00:00:10 (5%) Cache: 10.0s/429KB
File tags:
icy-title: The Beatles - Love Me Do
A: 00:00:04 / 00:00:14 (31%) Cache: 10s/432KB
File tags:
icy-title: Janet Jackson - Together Again
A: 00:01:29 / 00:01:38 (90%) Cache: 9.3s/400KB
[ffmpeg] tls: Error in the pull function.
A: 00:01:38 / 00:01:39 (100%) Cache: 0.1s/2KB

Exiting... (End of file)

Por 443/tcp:
mpv https://playerservices.streamtheworld.com/api/livestream-redirect/NOSTALGIEWHATAFEELING.mp3
(+) Audio --aid=1 (mp3 2ch 44100Hz)
AO: [pulse] 44100Hz stereo 2ch float
A: 00:00:00 / 00:00:11 (5%) Cache: 10s/468KB
File tags:
icy-title: Alphaville - Sounds Like A Melody
A: 00:01:28 / 00:01:39 (89%) Cache: 10s/462KB
[ffmpeg] tls: Error in the pull function.
A: 00:01:39 / 00:01:39 (100%) Cache: 0.1s/2KB

Exiting... (End of file)


Port 1194/udp:
mpv https://playerservices.streamtheworld.com/api/livestream-redirect/NOSTALGIEWHATAFEELING.mp3
(+) Audio --aid=1 (mp3 2ch 44100Hz)
AO: [pulse] 44100Hz stereo 2ch float
A: 00:00:31 / 00:00:41 (75%) Cache: 10s/437KB
File tags:
icy-title: Vanessa Paradis - Be My Baby
A: 00:01:23 / 00:01:33 (89%) Cache: 9.9s/426KB
[ffmpeg] tls: Error in the pull function.
A: 00:01:33 / 00:01:33 (100%) Cache: 0.1s/2KB

Exiting... (End of file)

Vlc:
VLC media player 3.0.16 Vetinari (revision 3.0.13-8-g41878ff4f2)
[000055abb39495b0] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[000055abb39d5310] main playlist: playlist is empty
uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu
[00007f35c4003100] prefetch stream error: unimplemented query (264) in control
[00007f35c45e5a90] gnutls tls client error: The TLS connection was non-properly terminated.
[00007f35c45e5a90] gnutls tls client error: The specified session has been invalidated for some reason.
uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu
uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu
I think it's an ffmpeg issue because ffmepg because
- mpv and vlic both list ffmpeg as a dependency
- https://trac.ffmpeg.org/ticket/7768
Since I was also having the issue with clementine and @Oldhabbits mentioned they are having it with rhythmbox I'm thinking it could also be library that makes use off ffmpeg.

Mint and Arch have different versions in ffmpeg: 4.2.4(Mint) vs 4.4.1(Arch)
ii ffmpeg 7:4.2.4-1ubuntu0.1 amd64 Tools for transcoding, streaming and playing of multimedia files

local/ffmpeg 2:4.4.1-1
Complete solution to record, convert and stream audio and video
So I tried it on Mint as well and the same happens there.
tux@mint:~$ lsb_release -r
Release: 20.2

tux@mint:~/Documents$ mpv https://playerservices.streamtheworld.com/api/livestream-redirect/NOSTALGIEWHATAFEELING.mp3
(+) Audio --aid=1 (mp3 2ch 44100Hz)
AO: [pulse] 44100Hz stereo 2ch float
A: 00:00:00 / 00:00:10 (5%) Cache: 9.9s/426KB
File tags:
icy-title: Phats And Small - Feel Good
A: 00:01:29 / 00:01:39 (89%) Cache: 9.7s/417KB
[ffmpeg] tls: Error in the pull function.
A: 00:01:39 / 00:01:39 (99%) Cache: 0.0s
So everything points to it being an ffmpeg issue and in case of the application not using ffmpeg as a dependency some ffmpeg library. Since the error is from ffmpeg you will get this error too when using another vpn provider.
 
Thank you, f33dm3bits ! What a complete examination you've made ! :) I was suspecting something like an ffmpeg thing, because I also tried Mint 20.2 in an qemu-vm and had the same result as you. I also just installed Q4OS (a bullseye spin-off) on a separate partition and have found the same error there as well. So it seems that we can not do anything about it, don't we ? :-( I guess the only thing to do is 1) wait for a new ffmpeg version (altough the bug report that you found is already 3 years old) or 2) install anything other than a Debian 11 spin-off. Or do you find the same problem also in Arch ?

Thanks again for your effort in helping me !

Eddy
 
Of course, I could go back to Debian 10 but I rather don't do that. The available software in 10 is getting old, isn't it...

Greetz,

Eddy
 
I just discovered a funny thing, "by accident", a possible (maybe temporary) workaround :
It goes by this:
- disconnect windscribe CLI
- start the mediaplayer with any radio station
- while playing music, reconnect windscribe CLI with any location, within the first 90 second deadline
- the IP-address changes, the mediaplayer waits and re-buffers the audio stream
- the mediaplayer keeps playing after the 90 second deadline, but some drop-outs in de music occur now and then.

Of course, every time I now want to change the radio station to another stream, I'll have to do this whole work-around again.
Happy New Year to everybody !

Eddy
 
Or do you find the same problem also in Arch ?
Thanks again for your effort in helping me !
I tried it on Arch, if I didn't have the same problem on Arch I would have install a Debian 11 vm and then tried it there. I thought if I'm already having the same problem on Arch it's not worth my time to install a separate Debian 11 vm and already had a Mint vm installed. If you say it was working on Debian 10 I can still try and install that in a vm, just curious to see what happens.
 
I tried it on Arch
Ow, I see, I didn't understood it right the first time, sorry. ;-)
Don't bother installing Debian 10 for my sake, though, unless you'll find it fun to do, of course !
Have a nice year's-end first, my friend...
Cheers !
Eddy
 

Staff online

Members online


Top