ustvgo-iptv icon indicating copy to clipboard operation
ustvgo-iptv copied to clipboard

Buffering, and cutting out.

Open paul19920801 opened this issue 1 year ago • 6 comments

Hi

first of all thank you for developing this amazing app.

I run this on a VPS, which ensures an always on uninterrupted IPTV Service.

I initially had this running on a VPS in Amsterdam, and performance was outstanding, with Zero buffering. My physical location is in Cape Town

There seems to have been changes made on the USTVGo end a few days ago. The Amsterdam VPS ceased to be able to load the m3u playlist, and when I went to USTVGO, I was unable to stream, and noted the following. All channels required the use of the VPN, not just the VIP ones.

As soon as I moved ustvgo-iptv to a VPS located in the USA - USTVGO immediately started operating again.

However USTVGo works flawlessly for a few minutes, then starts buffering, and the stream ultimately terminates.

This has never happened before.

Is the autoauth still working, has something changed?

Please can you have a look.

Thanks

paul19920801 avatar Sep 01 '22 07:09 paul19920801

Hi. Do you use the app in a docker or as a systemd service? Try to run it standalone, first install with pip install ustvgo-iptv and then run ustvgo-iptv --access-logs. Copy your logs here during the issue so I can see if anything strange is going on.

interlark avatar Sep 01 '22 08:09 interlark

I'll also start by saying a giant thank you for creating this project! I noticed that a couple of days ago the USTVGO site changed their entire channel lineup to require a US IP address where before they didn't have that requirement.

I have not noticed any buffering or instability out of the ordinary over the past couple of days.

dahartigan avatar Sep 01 '22 09:09 dahartigan

Just checked. Indeed, with non-US IP addresses you can watch only CNN, Fox News and MSNBC channels. I hope they'll change their policy in near future, but for a while you have to use US VPN to watch USTVGO.

interlark avatar Sep 01 '22 09:09 interlark

It's worth noting that for this latest change, the requirement of a US VPN is not limited to Nord VPN. I have been succesful with other providers too, including on a VPS in the US.

The "premium" channels haven't changed their requirements, so anyone using Nord in their setup should make sure their server location is somewhere in the US for the forseeable future.

dahartigan avatar Sep 01 '22 09:09 dahartigan

Hi. Do you use the app in a docker or as a systemd service? Try to run it standalone, first install with pip install ustvgo-iptv and then run ustvgo-iptv --access-logs. Copy your logs here during the issue so I can see if anything strange is going on.

I run the app as a standalone service on a VPS based in the USA, which runs Zerotier.

I am then able to retrieve them here in South Africa Will send logs now. I am now hosting it on a VPS in Johannesburg, which connects via VPN to the US VPS via Wireguard. It's a fairly high speed link, so speed can't be the issue. Will try access logs, and will post output shortly.

paul19920801 avatar Sep 02 '22 10:09 paul19920801

10:52:00 :: INFO :: Serving http://127.0.0.1:6363/ustvgo.m3u8 10:52:00 :: INFO :: Serving http://127.0.0.1:6363/tvguide.xml 10:52:00 :: INFO :: Serving http://192.168.10.155:6363/ustvgo.m3u8 10:52:00 :: INFO :: Serving http://192.168.10.155:6363/tvguide.xml 10:52:00 :: INFO :: Serving http://172.29.248.49:6363/ustvgo.m3u8 10:52:00 :: INFO :: Serving http://172.29.248.49:6363/tvguide.xml 10:52:00 :: INFO :: Serving http://10.126.79.4:6363/ustvgo.m3u8 10:52:00 :: INFO :: Serving http://10.126.79.4:6363/tvguide.xml

http://172.29.248.49:6363/ustvgo.m3u8 10:53:00 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:00 +0000] "GET /ustvgo.m3u8 HTTP/1.1" 200 13344 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:53:03 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:00 +0000] "GET /ABC/myStrea m/playlist.m3u8 HTTP/1.1" 206 672 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:53:07 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:03 +0000] "GET /ABC/myStrea m/chunks.m3u8?nimblesessionid=259449463&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2416 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:53:13 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:07 +0000] "GET /ABC/myStrea m/l_146374_9618063_1316.ts?nimblesessionid=259449463&wmsAuthSign=c2VydmVyX3RpbWU 9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmF saWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 608889 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4 " 10:53:19 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:13 +0000] "GET /ABC/myStrea m/l_146374_9624636_1317.ts?nimblesessionid=259449463&wmsAuthSign=c2VydmVyX3RpbWU 9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmF saWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 763801 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4 " 10:53:22 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:19 +0000] "GET /ABC/myStrea m/chunks.m3u8?nimblesessionid=259449463&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2418 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:53:31 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:22 +0000] "GET /ABC/myStrea m/l_146374_9630909_1318.ts?nimblesessionid=259449463&wmsAuthSign=c2VydmVyX3RpbWU 9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmF saWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 1308062 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:53:40 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:31 +0000] "GET /ABC/myStrea m/l_146374_9637015_1319.ts?nimblesessionid=259449463&wmsAuthSign=c2VydmVyX3RpbWU 9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmF saWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 1564306 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:53:43 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:40 +0000] "GET /ABC/myStrea m/chunks.m3u8?nimblesessionid=259449463&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2418 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:53:46 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:43 +0000] "GET /CMT/myStrea m/playlist.m3u8 HTTP/1.1" 206 671 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:53:49 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:46 +0000] "GET /CMT/myStrea m/chunks.m3u8?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2426 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:53:55 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:49 +0000] "GET /CMT/myStrea m/l_146014_11412117_3870.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 384793 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:01 :: INFO :: 172.29.109.34 [02/Sep/2022:10:53:56 +0000] "GET /CMT/myStrea m/l_146014_11420459_3871.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 324069 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:04 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:01 +0000] "GET /CMT/myStrea m/chunks.m3u8?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2426 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:54:10 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:04 +0000] "GET /CMT/myStrea m/l_146014_11424630_3872.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 639345 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:16 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:10 +0000] "GET /CMT/myStrea m/l_146014_11432971_3873.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 359789 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:19 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:16 +0000] "GET /CMT/myStrea m/chunks.m3u8?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2426 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:54:26 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:19 +0000] "GET /CMT/myStrea m/l_146014_11437142_3874.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 680329 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:32 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:26 +0000] "GET /CMT/myStrea m/l_146014_11445484_3875.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 342117 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:35 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:32 +0000] "GET /CMT/myStrea m/chunks.m3u8?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2426 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:54:42 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:35 +0000] "GET /CMT/myStrea m/l_146014_11449655_3876.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 721501 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:47 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:42 +0000] "GET /CMT/myStrea m/l_146014_11457996_3877.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 363737 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:52 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:47 +0000] "GET /CMT/myStrea m/l_146014_11462167_3878.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 285529 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:54:55 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:52 +0000] "GET /CMT/myStrea m/chunks.m3u8?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2426 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:55:01 :: INFO :: 172.29.109.34 [02/Sep/2022:10:54:55 +0000] "GET /CMT/myStrea m/l_146014_11466338_3879.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 371257 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:55:06 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:01 +0000] "GET /CMT/myStrea m/l_146014_11473045_3880.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 201869 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:55:12 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:06 +0000] "GET /CMT/myStrea m/l_146014_11478000_3881.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 488193 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:55:17 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:12 +0000] "GET /CMT/myStrea m/l_146014_11486341_3882.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 320309 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:55:21 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:18 +0000] "GET /CMT/myStrea m/chunks.m3u8?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2425 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:55:27 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:21 +0000] "GET /CMT/myStrea m/l_146014_11490512_3883.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 570349 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:55:33 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:27 +0000] "GET /CMT/myStrea m/l_146014_11498854_3884.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 378589 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:55:39 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:33 +0000] "GET /CMT/myStrea m/l_146014_11505777_3885.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 276129 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:55:45 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:39 +0000] "GET /CMT/myStrea m/l_146014_11509781_3886.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 394381 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:55:48 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:45 +0000] "GET /CMT/myStrea m/chunks.m3u8?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbWU9OS8yLzIwMjIg MTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdmFsaWRtaW51dGVz PTI0MA== HTTP/1.1" 200 2424 "-" "VLC/3.0.17.4 LibVLC/3.0.17.4" 10:55:53 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:48 +0000] "GET /CMT/myStrea m/l_146014_11517039_3887.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 356593 "-" "VLC/3.0.17.4 LibVLC/3.0.17. 4" 10:56:03 :: INFO :: 172.29.109.34 [02/Sep/2022:10:55:54 +0000] "GET /CMT/myStrea m/l_146014_11521209_3888.ts?nimblesessionid=259449494&wmsAuthSign=c2VydmVyX3RpbW U9OS8yLzIwMjIgMTA6NTE6MTAgQU0maGFzaF92YWx1ZT1EUWNQRWtibVM0VGtITm5uNTRoYmxBPT0mdm FsaWRtaW51dGVzPTI0MA%3D%3D HTTP/1.1" 200 773953 "-" "VLC/3.0.17.4 LibVLC/3.0.17.

paul19920801 avatar Sep 02 '22 10:09 paul19920801

There are nothing wrong with the logs, looks like you don't have enough speed.

Also you could try to increase buffer. image

interlark avatar Sep 02 '22 15:09 interlark

Can the buffer size change for headless docker instance? I mean on the server side.

oatmealm avatar Oct 05 '22 11:10 oatmealm

Server is a simple proxy, it has no buffer.

interlark avatar Oct 05 '22 11:10 interlark