orestonce/m3u8d

linux arm版本的cli文件无法在android手机上成功下载m3u8

Closed this issue · 12 comments

yulf commented

我执行m3u8d download -u "url",但是返回错误,这个url在mac上用同样的命令是可以下载的。

错误信息如下:

下载进度 0.00%
sniffM3u8: Get "https:********************": dial tcp: lookup hls.vdtuzv.com on [::1]:53: read udp [::1]:49900->[::1]:53: read: connection refused

解析主机失败了,你 ping hls.vdtuzv.com 看看是否可以解析呢

yulf commented

解析主机失败了,你 ping hls.vdtuzv.com 看看是否可以解析呢

ping可以通的。
有没有可能是golang的问题,我看有人对于类似问题是这么说的:
termux/termux-app#1138

This not a DNS resolver !
DNS resolver is part of code that handles DNS queries. Typically handled via CGO calls to C library: GNU libc on Linux and Bionic on Android. They are incompatible.

Note that static linking of the executable does not have any effect. Resolver from GNU libc always used via dlopen(). That is why it works in Ubuntu but not in Termux.

yulf commented

@orestonce 请问你的这 linux arm版本是不是就是给android用的?

linux arm我没有在android机器上实验过

刚才我在ailiyun上的arm64的服务器上实验了m3u8d_cli_linux_arm-v1.24.5,未出现这问题

root@iZ2vc3qocdogbt6flnd3wjZ:~# go version
go version go1.22.3 linux/arm64
root@iZ2vc3qocdogbt6flnd3wjZ:~# cat /proc/cpuinfo 
processor       : 0
BogoMIPS        : 100.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm ssbs
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x0
CPU part        : 0xd49
CPU revision    : 0

root@iZ2vc3qocdogbt6flnd3wjZ:~# cat /etc/os-release 
NAME="Ubuntu"
VERSION="18.04.5 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.5 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
yulf commented

那就是android 不能用,对吧? 不过android也算 linux arm 架构。。

嗯嗯

m3u8d_cli_android_arm64.zip
你看看这个编译出来的版本是否可以在android上运行呢,我没有android环境。

最新版已支持android_arm64

我也遇到了一样的问题,手机是红米k20pro,系统版本是12.5.6,内核版本4.14.180-perf-gb24d1131198a,m3u8d用的1.24.39

@blackcd318 试试 android_arm64的版本:https://github.com/orestonce/m3u8d/releases/tag/v1.24.39

很不巧,用的就是这个版本
我只是提一下我遇到的bug,现在也不需要了,我写了个脚本,用wget下载了,手机上下载真不方便,要不是手机好拿去别的地方蹭网,我觉得还是电脑方便