telegramdesktop / tdesktop

Telegram Desktop messaging app
https://desktop.telegram.org/
Other
26.1k stars 5.18k forks source link

aarch64 and armhf version of telegram-desktop crash on attempt to render animated sticker #6647

Closed RussianNeuroMancer closed 4 years ago

RussianNeuroMancer commented 5 years ago
### Steps to reproduce 1. Install aarch64 version ob Ubuntu 19.10 (on devboard, laptop or qemu virtual machine) 2. Install telegram-desktop from system repository 3. Try to send any animated sticker ### Expected behaviour Telegram doesn't crash on attempt to render sticker animation ### Actual behaviour Telegram crash on attempt to render sticker animation ### Configuration **Operating system:** Ubuntu 19.10 **Version of Telegram Desktop:** 1.8.8 **Used theme**: dark theme [gdb.log](https://github.com/telegramdesktop/tdesktop/files/3693129/gdb.log)
Aokromes commented 5 years ago

can you try on some build never than 1.8.8?

Johnnynator commented 5 years ago

can you try on some build never than 1.8.8?

it does not work in 1.8.12 (or was it .13(?)). I wasn't able to test any other versions yet. And there was afaik no commit after 1.8.8. that would have touched anything of the related code

https://github.com/telegramdesktop/tdesktop/blob/1d8d2b6251ad69497be8157cd6f101c4dd98e7a2/Telegram/SourceFiles/lottie/lottie_cache.cpp#L142-L152

p3732 commented 4 years ago

Still not working with 1.8.15 FWIW.

RussianNeuroMancer commented 4 years ago

Crash also reproducible on armhf architecture, tested on Asus Flipbook C100P (RK3288) with Debian 10 and Linux 5.4.8.

Aokromes commented 4 years ago

try 1.9.8 plz.

p3732 commented 4 years ago

The update tends to make the crashing more immediate for me. While before animated stickers would usually play almost a whole loop and sometimes even longer in the smaller preview versions when selecting a sticker, with the update it more commolny directly crashes with the animated sticker not even being fully loaded.

I also tried with a from-scratch setup, same result. Only console output I get is [swscaler @ 0xffff8cf63430] No accelerated colorspace conversion found from yuv420p to bgra.

Aokromes commented 4 years ago

can you run telegram with gdb or valgrind to get a crash and post result here?

john-preston commented 4 years ago

Now https://snapcraft.io/telegram-desktop has armhf and arm64 builds. Please check if they're OK.

Johnnynator commented 4 years ago

Nope, still crashing. (Flatpak, Snap, etc...)

humb1t commented 4 years ago

--edge version still crashing 1.9.9-8-g68027fd23

Aokromes commented 4 years ago

Nope, still crashing. (Flatpak, Snap, etc...)

--edge version still crashing 1.9.9-8-g68027fd23

can you run telegram with gdb or valgrind to get a crash and post result here?

humb1t commented 4 years ago

@Aokromes will try to use gdb and bring some logs.

humb1t commented 4 years ago

@Aokromes - sorry, failed in usage of gdb, but found snap logs:

[2020.02.05 20:52:33] Launched version: 1009009, install beta: [FALSE], alpha: 0, debug mode: [FALSE], test dc: [FALSE]
[2020.02.05 20:52:33] Executable dir: /snap/telegram-desktop/1079/bin/, name: telegram-desktop
[2020.02.05 20:52:33] Initial working dir: /home/pi/
[2020.02.05 20:52:33] Working dir: /home/pi/snap/telegram-desktop/1079/.local/share/TelegramDesktop/
[2020.02.05 20:52:33] Command line: telegram-desktop --
[2020.02.05 20:52:32] Executable path before check: /snap/telegram-desktop/1079/bin/telegram-desktop
[2020.02.05 20:52:32] SNAP Environment detected, launcher filename is telegram-desktop_telegramdesktop.desktop
[2020.02.05 20:52:33] Logs started
[2020.02.05 20:52:35] Connecting local socket to /run/user/1000/snap.telegram-desktop/8f182ce9355a343ef741bbeafd33134c...
[2020.02.05 20:52:35] This is the only instance of Telegram, starting server and app...
[2020.02.05 20:52:35] Moved logging from '/home/pi/snap/telegram-desktop/1079/.local/share/TelegramDesktop/log_start0.txt' to '/home/pi/snap/telegram-desktop/1079/.local/share/TelegramDesktop/log.txt'!
[2020.02.05 20:52:35] Primary screen DPI: 96.1263
[2020.02.05 20:52:38] Font: from ':/gui/fonts/DAOpenSansRegular.ttf' loaded 'DAOpenSansRegular'
[2020.02.05 20:52:38] Font: from ':/gui/fonts/DAOpenSansRegularItalic.ttf' loaded 'DAOpenSansRegularItalic'
[2020.02.05 20:52:38] Font: from ':/gui/fonts/DAOpenSansBold.ttf' loaded 'DAOpenSansBold'
[2020.02.05 20:52:38] Font: from ':/gui/fonts/DAOpenSansBoldItalic.ttf' loaded 'DAOpenSansBoldItalic'
[2020.02.05 20:52:38] Font: from ':/gui/fonts/DAOpenSansSemibold.ttf' loaded 'DAOpenSansSemibold'
[2020.02.05 20:52:38] Font: from ':/gui/fonts/DAOpenSansSemiboldItalic.ttf' loaded 'DAOpenSansSemiboldItalic'
[2020.02.05 20:52:38] Error: failed to load 'gdk_x11_drawable_get_xdisplay' function!
[2020.02.05 20:52:38] Getting DE, XDG_CURRENT_DESKTOP: 'XFCE'
[2020.02.05 20:52:38] Getting DE, DESKTOP_SESSION: 'lightdm-xsession'
[2020.02.05 20:52:38] Getting DE, KDE_SESSION_VERSION: ''
[2020.02.05 20:52:38] Getting DE, GNOME_DESKTOP_SESSION_ID: ''
[2020.02.05 20:52:38] Getting DE, KDE_FULL_SESSION: ''
[2020.02.05 20:52:38] DE: Other
[2020.02.05 20:52:38] Tray Icon: Try Qt = [TRUE], Prefer appindicator = [FALSE]
[2020.02.05 20:52:39] App Info: reading settings...
[2020.02.05 20:52:39] App Info: reading encrypted settings...
[2020.02.05 20:52:39] Lang Info: Loaded cached, keys: 2579
[2020.02.05 20:52:40] OpenAL Logging Level: (not set)
[2020.02.05 20:52:40] Audio Playback Devices: OpenAL Soft
[2020.02.05 20:52:40] Audio Playback Default Device: OpenAL Soft
[2020.02.05 20:52:40] Audio Capture Devices: Monitor of Built-in Audio Analog Mono
[2020.02.05 20:52:40] Audio Capture Default Device: Monitor of Built-in Audio Analog Mono
[2020.02.05 20:52:42] App Info: reading map...
[2020.02.05 20:52:42] App Info: reading encrypted map...
[2020.02.05 20:52:42] App Info: reading encrypted user settings...
[2020.02.05 20:52:42] App Info: encrypted user settings read.
[2020.02.05 20:52:42] App Info: reading encrypted mtp data...
[2020.02.05 20:52:42] MTP Info: read keys, current: 3, to destroy: 0
[2020.02.05 20:52:42] Map read time: 64
[2020.02.05 20:52:43] TCP Error: other (-1) - Unknown error
[2020.02.05 20:52:43] HTTP Error: network error 99 - Unknown error
[2020.02.05 20:52:43] Export Info: Destroy top bar by controller removal.
[2020.02.05 20:52:43] Using Qt tray icon.
[2020.02.05 20:52:43] Tray Icon: Using Qt tray icon, available: [TRUE]
[2020.02.05 20:52:44] Not using Unity Launcher count.
[2020.02.05 20:52:48] TCP Error: other (-1) - Unknown error
[2020.02.05 20:52:48] HTTP Error: network error 99 - Unknown error
[2020.02.05 20:52:49] TCP Error: other (-1) - Unknown error
[2020.02.05 20:52:49] HTTP Error: network error 99 - Unknown error
[2020.02.05 20:53:07] TCP Error: other (-1) - Unknown error
[2020.02.05 20:53:07] HTTP Error: network error 99 - Unknown error
[2020.02.05 20:53:58] Audio Info: recreating audio device and reattaching the tracks
[2020.02.05 20:54:02] Assertion Failed! "lines == to.height()" lottie_cache.cpp:150
LordPossum commented 4 years ago

I hope I got gdb to work right, but here are some logs from version 1.8.15 tgdesktop 1.8.15-2~bpo10+1.log from Debian buster-backports repo and from version 1.19.14 tg desktop 1.9.14+ds-1.log from Debian Bullseye repo. As said, app crashes when attempting to render an animated sticker.

industrium commented 4 years ago

BTW: why not temporarily disable animation for ARM-builds?

ilya-fedin commented 4 years ago

BTW: why not temporarily disable animation for ARM-builds?

Because arm is not officially supported and preston doesn't want to spend time on this :( Although, I have a PR that might fix that. If someone test it - I think, preston accept it.

industrium commented 4 years ago

I can test if somebody builds a binary

industrium commented 4 years ago

BTW, i've got a backtrace from gdb

Thread 21 "Thread (pooled)" received signal SIGABRT, Aborted.
[Switching to Thread 0xa9984eb0 (LWP 4515)]
__libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47
47  ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S: Нет такого файла или каталога.
(gdb) bt
#0  __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47
#1  0xb453bdba in __libc_signal_restore_set (set=0xa99843f4) at ../sysdeps/unix/sysv/linux/internal-signals.h:84
#2  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:48
#3  0xb452c7f2 in __GI_abort () at abort.c:79
#4  0x005c0586 in base::assertion::fail(char const*, char const*, int) ()
    at ./Telegram/lib_base/base/assertion.h:34
#5  0x0133f54e in DecodeYUV2RGB () at ./Telegram/lib_lottie/lottie/lottie_cache.cpp:150
#6  Decode () at ./Telegram/lib_lottie/lottie/lottie_cache.cpp:185
#7  Lottie::Cache::renderFrame(QImage&, Lottie::FrameRequest const&, int) ()
    at ./Telegram/lib_lottie/lottie/lottie_cache.cpp:491
#8  Lottie::Cache::renderFrame(QImage&, Lottie::FrameRequest const&, int) ()
    at ./Telegram/lib_lottie/lottie/lottie_cache.cpp:462
#9  0x0133f6c4 in Lottie::Cache::readHeader(Lottie::FrameRequest const&) ()
    at ./Telegram/lib_lottie/lottie/lottie_cache.cpp:455
#10 0x0133f7b6 in Lottie::Cache::Cache(QByteArray const&, Lottie::FrameRequest const&, base::unique_function<void (QByteArray&&)>) () at ./Telegram/lib_lottie/lottie/lottie_cache.cpp:377
#11 0x013319d4 in std::make_unique<Lottie::Cache, QByteArray const&, Lottie::FrameRequest const&, base::unique_function<void (QByteArray&&)> >(QByteArray const&, Lottie::FrameRequest const&, base::unique_function<void (QByteArray&&)>&&) () at /usr/include/c++/9/bits/unique_ptr.h:857
#12 Init () at ./Telegram/lib_lottie/lottie/lottie_animation.cpp:111
#13 operator() () at ./Telegram/lib_lottie/lottie/lottie_animation.cpp:208
#14 run() () at ./Telegram/lib_crl/crl/qt/crl_qt_async.h:28
#15 0xb4b790d0 in  () at /lib/arm-linux-gnueabihf/libQt5Core.so.5
#16 0xb4b76818 in  () at /lib/arm-linux-gnueabihf/libQt5Core.so.5
#17 0xb6de7d3e in start_thread (arg=0xab8d9a34) at pthread_create.c:479
#18 0xb45b220c in  () at ../sysdeps/unix/sysv/linux/arm/clone.S:73
(gdb) 

telegram-desktop-1.9.14 from Ubuntu 20.04

schoentoon commented 4 years ago

That seems to point at https://github.com/desktop-app/lib_lottie/blob/master/lottie/lottie_cache.cpp#L150 in that case

industrium commented 4 years ago

BTW: why not temporarily disable animation for ARM-builds?

Because arm is not officially supported and preston doesn't want to spend time on this :( Although, I have a PR that might fix that. If someone test it - I think, preston accept it.

Just checked this patch - now it works! Telegram does not crashes with animated stickers.

ilya-fedin commented 4 years ago

That seems to point at https://github.com/desktop-app/lib_lottie/blob/master/lottie/lottie_cache.cpp#L150 in that case

sws_scale doesn't seem to work on arm. I.e. even after that you will not be able to watch videos, gifs and etc.

ilya-fedin commented 4 years ago

I upgraded ffmpeg to 4.x in snap. I hope, when PR will be accepted and snap edge channel will build this commit, the situation might be changed :thinking:

ilya-fedin commented 4 years ago

Okay, it is built. Can anyone test package on the edge channel?

p3732 commented 4 years ago

Tried snaps on arch, could not get the telegram started, not even from stable channel. So to anyone with Ubuntu, getting it from the edge channel is as simple as:

snap remove telegram-desktop # if you installed it with snap
snap install telegram-desktop --edge
snap run telegram-desktop
ilya-fedin commented 4 years ago

# if you installed it with snap

There are snap refresh --edge telegram-desktop

could not get the telegram started

Can you send telegram output and log (~/snap/telegram-desktop/current/.local/share/TelegramDesktop/log.txt)?

industrium commented 4 years ago

Tried snaps on arch, could not get the telegram started, not even from stable channel. So to anyone with Ubuntu, getting it from the edge channel is as simple as:

snap remove telegram-desktop # if you installed it with snap
snap install telegram-desktop --edge
snap run telegram-desktop

Just tested snap build - crashes

ilya-fedin commented 4 years ago

:(

industrium commented 4 years ago

That was expectable because https://github.com/desktop-app/cmake_helpers/pull/19 seems not merged

As I said before - manually build with this patch works fine

ilya-fedin commented 4 years ago

That was expectable because desktop-app/cmake_helpers#19 seems not merged

I was hoping that sws_scale would work with ffmpeg 4 and this would not be necessary

industrium commented 4 years ago

@john-preston Please accept https://github.com/desktop-app/cmake_helpers/pull/19 because this fixes the bug

industrium commented 4 years ago

That was expectable because desktop-app/cmake_helpers#19 seems not merged

I was hoping that sws_scale would work with ffmpeg 4 and this would not be necessary

BTW, video playing still not fixed. I.e. telegram can't play videos from https://t.me/per_i_ozv

ilya-fedin commented 4 years ago

BTW, video playing still not fixed. I.e. telegram can't play videos from

https://github.com/telegramdesktop/tdesktop/issues/6647#issuecomment-596301377

p3732 commented 4 years ago

Can you send telegram output and log (~/snap/telegram-desktop/current/.local/share/TelegramDesktop/log.txt)?

I found that my issue is the same as #7144

ilya-fedin commented 4 years ago

I found that my issue is the same as #7144

sudo fc-cache -r :)

p3732 commented 4 years ago

I installed patched ubuntu-fontconfig and now the snap works.

Animated stickers still crash it though. Here is the log.

[2020.03.09 20:36:22] Launched version: 1009019, install beta: [TRUE], alpha: 0, debug mode: [FALSE], test dc: [FALSE]
[2020.03.09 20:36:22] Executable dir: /snap/telegram-desktop/1286/bin/, name: telegram-desktop
[2020.03.09 20:36:22] Initial working dir: /home/p3732/
[2020.03.09 20:36:22] Working dir: /home/p3732/snap/telegram-desktop/1286/.local/share/TelegramDesktop/
[2020.03.09 20:36:22] Command line: telegram-desktop
[2020.03.09 20:36:22] Executable path before check: /snap/telegram-desktop/1286/bin/telegram-desktop
[2020.03.09 20:36:22] Logs started
[2020.03.09 20:36:22] Launcher filename: telegram-desktop_telegram-desktop.desktop
[2020.03.09 20:36:22] Connecting local socket to /run/user/1000/snap.telegram-desktop/93563a13c754a95e6ecbadd9249819ec...
[2020.03.09 20:36:22] Socket connect error 0, starting server and app...
[2020.03.09 20:36:22] Moved logging from '/home/p3732/snap/telegram-desktop/1286/.local/share/TelegramDesktop/log_start0.txt' to '/home/p3732/snap/telegram-desktop/1286/.local/share/TelegramDesktop/log.txt'!
[2020.03.09 20:36:22] Primary screen DPI: 96
[2020.03.09 20:36:22] Font: from ':/gui/fonts/DAOpenSansRegular.ttf' loaded 'DAOpenSansRegular'
[2020.03.09 20:36:22] Font: from ':/gui/fonts/DAOpenSansRegularItalic.ttf' loaded 'DAOpenSansRegularItalic'
[2020.03.09 20:36:23] Font: from ':/gui/fonts/DAOpenSansBold.ttf' loaded 'DAOpenSansBold'
[2020.03.09 20:36:23] Font: from ':/gui/fonts/DAOpenSansBoldItalic.ttf' loaded 'DAOpenSansBoldItalic'
[2020.03.09 20:36:23] Font: from ':/gui/fonts/DAOpenSansSemibold.ttf' loaded 'DAOpenSansSemibold'
[2020.03.09 20:36:23] Font: from ':/gui/fonts/DAOpenSansSemiboldItalic.ttf' loaded 'DAOpenSansSemiboldItalic'
[2020.03.09 20:36:23] App Info: reading settings...
[2020.03.09 20:36:23] App Info: reading encrypted settings...
[2020.03.09 20:36:23] Lang Info: Loaded cached, keys: 2581
[2020.03.09 20:36:23] OpenAL Logging Level: (not set)
[2020.03.09 20:36:23] Audio Playback Devices: OpenAL Soft
[2020.03.09 20:36:23] Audio Playback Default Device: OpenAL Soft
[2020.03.09 20:36:23] Audio Capture Devices: Built-in Audio Stereo;Monitor of Built-in Audio Stereo
[2020.03.09 20:36:23] Audio Capture Default Device: Built-in Audio Stereo
[2020.03.09 20:36:24] System tray available: [FALSE]
[2020.03.09 20:36:24] Using Unity launcher counter.
[2020.03.09 20:36:24] App Info: reading map...
[2020.03.09 20:36:24] App Info: reading encrypted map...
[2020.03.09 20:36:24] App Info: reading encrypted user settings...
[2020.03.09 20:36:24] App Info: encrypted user settings read.
[2020.03.09 20:36:24] App Info: reading encrypted mtp data...
[2020.03.09 20:36:24] MTP Info: read keys, current: 3, to destroy: 0
[2020.03.09 20:36:24] Map read time: 34
[2020.03.09 20:36:24] Export Info: Destroy top bar by controller removal.
[2020.03.09 20:36:30] Assertion Failed! "lines == to.height()" lottie_cache.cpp:150
p3732 commented 4 years ago

And here is a backtrace

#0  0x0000ffff8c6974d8 in raise () from target:/lib/aarch64-linux-gnu/libc.so.6
#1  0x0000ffff8c6988b4 in abort () from target:/lib/aarch64-linux-gnu/libc.so.6
#2  0x0000aaaad733d678 in base::assertion::fail(char const*, char const*, int) ()
#3  0x0000aaaad85089c0 in Lottie::Cache::renderFrame(QImage&, Lottie::FrameRequest const&, int) [clone .part.34] ()
#4  0x0000aaaad84f5504 in Lottie::SharedState::renderFrame(QImage&, Lottie::FrameRequest const&, int) ()
#5  0x0000aaaad84f58d0 in Lottie::SharedState::renderNextFrame(gsl::not_null<Lottie::Frame*>, Lottie::FrameRequest const&) ()
#6  0x0000aaaad84f609c in Lottie::SharedState::renderNextFrame(Lottie::FrameRequest const&) ()
#7  0x0000aaaad84f7c70 in Lottie::FrameRendererObject::generateFrames() ()
#8  0x0000aaaad84f8104 in crl::details::list::Entry<crl::details::object_on_queue_data<Lottie::FrameRendererObject>::async<crl::details::object_on_queue_data<Lottie::FrameRendererObject>::with<Lottie::FrameRendererObject::queueGenerateFrames()::{lambda(Lottie::FrameRendererObject&)#1}>(Lottie::FrameRendererObject::queueGenerateFrames()::{lambda(Lottie::FrameRendererObject&)#1}&&)::{lambda()#1}>(crl::details::object_on_queue_data<Lottie::FrameRendererObject>::with<Lottie::FrameRendererObject::queueGenerateFrames()::{lambda(Lottie::FrameRendererObject&)#1}>(Lottie::FrameRendererObject::queueGenerateFrames()::{lambda(Lottie::FrameRendererObject&)#1}&&)::{lambda()#1}) const::{lambda()#1}>::Process(crl::details::list::BasicEntry*) ()
#9  0x0000aaaad83800f4 in crl::details::list::process() ()
#10 0x0000aaaad83803d4 in crl::queue::process() ()
#11 0x0000ffff8cdab990 in ?? () from target:/snap/telegram-desktop/1286/usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#12 0x0000ffff8cdaea60 in ?? () from target:/snap/telegram-desktop/1286/usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#13 0x0000ffff8c97c088 in start_thread () from target:/lib/aarch64-linux-gnu/libpthread.so.0
#14 0x0000ffff8c7354ec in ?? () from target:/lib/aarch64-linux-gnu/libc.so.6
TheHolyLoli commented 4 years ago

Okay, it is built. Can anyone test package on the edge channel?

I will test it in few hours.

ilya-fedin commented 4 years ago

I found ~4 years old posts in google that disabling neon optimizations helps with this issue. Would be awesome if someone try to compile telegram with --disable-neon added to ffmpeg configargs

TheHolyLoli commented 4 years ago

Animated stickers still crash it though. Here is the log.

Same happens to me version 1.9.19-beta-20-gb66acdd0d

@ilya-fedin can you give me instructions to compile telegram?I tried to compile with snapcraft and it needs multipass which I can't use on rpi

logs:

[2020.03.10 07:39:43] Launched version: 1009019, install beta: [TRUE], alpha: 0, debug mode: [FALSE], test dc: [FALSE]
[2020.03.10 07:39:43] Executable dir: /snap/telegram-desktop/1287/bin/, name: telegram-desktop
[2020.03.10 07:39:43] Initial working dir: /home/pi/
[2020.03.10 07:39:43] Working dir: /home/pi/snap/telegram-desktop/1287/.local/share/TelegramDesktop/
[2020.03.10 07:39:43] Command line: telegram-desktop
[2020.03.10 07:39:43] Executable path before check: /snap/telegram-desktop/1287/bin/telegram-desktop
[2020.03.10 07:39:43] Logs started
[2020.03.10 07:39:43] Launcher filename: telegram-desktop_telegram-desktop.desktop
[2020.03.10 07:39:47] Connecting local socket to /run/user/1000/snap.telegram-desktop/8a42708206e3a08a25c9b74042bd2fae...
[2020.03.10 07:39:47] Socket connect error 0, starting server and app...
[2020.03.10 07:39:47] Moved logging from '/home/pi/snap/telegram-desktop/1287/.local/share/TelegramDesktop/log_start0.txt' to '/home/pi/snap/telegram-desktop/1287/.local/share/TelegramDesktop/log.txt'!
[2020.03.10 07:39:47] Primary screen DPI: 95.941
[2020.03.10 07:39:49] Font: from ':/gui/fonts/DAOpenSansRegular.ttf' loaded 'DAOpenSansRegular'
[2020.03.10 07:39:49] Font: from ':/gui/fonts/DAOpenSansRegularItalic.ttf' loaded 'DAOpenSansRegularItalic'
[2020.03.10 07:39:49] Font: from ':/gui/fonts/DAOpenSansBold.ttf' loaded 'DAOpenSansBold'
[2020.03.10 07:39:49] Font: from ':/gui/fonts/DAOpenSansBoldItalic.ttf' loaded 'DAOpenSansBoldItalic'
[2020.03.10 07:39:49] Font: from ':/gui/fonts/DAOpenSansSemibold.ttf' loaded 'DAOpenSansSemibold'
[2020.03.10 07:39:50] Font: from ':/gui/fonts/DAOpenSansSemiboldItalic.ttf' loaded 'DAOpenSansSemiboldItalic'
[2020.03.10 07:39:50] App Info: reading settings...
[2020.03.10 07:39:50] App Info: reading encrypted settings...
[2020.03.10 07:39:50] Lang Info: Loaded cached, keys: 2581
[2020.03.10 07:39:51] OpenAL Logging Level: (not set)
[2020.03.10 07:39:51] Audio Playback Devices: OpenAL Soft
[2020.03.10 07:39:51] Audio Playback Default Device: OpenAL Soft
[2020.03.10 07:39:52] Audio Capture Devices: ALSA Default
[2020.03.10 07:39:52] Audio Capture Default Device: ALSA Default
[2020.03.10 07:39:52] Audio Error: Could not open capture device!
[2020.03.10 07:39:54] System tray available: [TRUE]
[2020.03.10 07:39:54] Not using Unity launcher counter.
[2020.03.10 07:39:54] App Info: reading map...
[2020.03.10 07:39:54] App Info: reading encrypted map...
[2020.03.10 07:39:54] App Info: reading encrypted user settings...
[2020.03.10 07:39:54] App Info: encrypted user settings read.
[2020.03.10 07:39:54] App Info: reading encrypted mtp data...
[2020.03.10 07:39:54] MTP Info: read keys, current: 4, to destroy: 0
[2020.03.10 07:39:54] Map read time: 63
[2020.03.10 07:39:55] Export Info: Destroy top bar by controller removal.
[2020.03.10 07:39:55] Using Qt tray icon.
[2020.03.10 07:40:00] Assertion Failed! "lines == to.height()" lottie_cache.cpp:150
ilya-fedin commented 4 years ago

can you give me instructions to compile telegram?I tried to compile with snapcraft and it needs multipass which I can't use on rpi

It can work through docker and lxc also. Also, there are a --destructive-mode flag that allows running on host (but you can't use snapcraft on non-ubuntu)

TheHolyLoli commented 4 years ago

It can work through docker and lxc also. Also, there are a --destructive-mode flag that allows running on host (but you can't use snapcraft on non-ubuntu)

How can I cross compile for armhf only in an amd64 platform?

ilya-fedin commented 4 years ago

How can I cross compile for armhf only in an amd64 platform?

Good question

TheHolyLoli commented 4 years ago

comment if you know anything but i guess I found it: snapcraft build --help has an option named --target-arch <arch> which says:Target architecture to cross compile to

I have no idea what kind of file it builds to and how I'm supposed to move build binary to my rpi. I have to setup a new VM(download ubuntu, update it.clone git and ....) so it may take some time but I'm going to start now

TheHolyLoli commented 4 years ago

1.multipass sucks.i tried over 10 timed and it timeouts randomly.i used LXD container 2.i built telegram for armhf but when running i get exec format error.looks like snap builds something for amd64 instead

/bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
/snap/telegram-desktop/x2/bin/desktop-launch: line 10: /snap/telegram-desktop/x2/usr/bin/update-mime-database: cannot execute binary file: Exec format error
ERROR: update-mime-database /home/pi/snap/telegram-desktop/x2/.local/share/mime exited abnormally with status 126
/snap/telegram-desktop/x2/bin/desktop-launch: line 597: /snap/telegram-desktop/x2/bin/telegram-desktop: cannot execute binary file: Exec format error
/snap/telegram-desktop/x2/bin/desktop-launch: line 597: /snap/telegram-desktop/x2/bin/telegram-desktop: Success
TheHolyLoli commented 4 years ago

output of sudo snapcraft --target-arch=armhf --debug --destructive-mode:

Setting target machine to 'armhf'
The plugin used by 'telegram' does not support cross-compiling to a different target architecture.

I'm going to try build.snapcraft.io see it I can get a successful build there

TheHolyLoli commented 4 years ago

I found ~4 years old posts in google that disabling neon optimizations helps with this issue. Would be awesome if someone try to compile telegram with --disable-neon added to ffmpeg configargs

Try it here : sudo snap install alish-tdesktop --edge use command alish-tdesktop.telegram-desktop to run

Videos - gifs - animated stickers... Everything video related works now I only added --disable-neon

Edit: @ilya-fedin please make a PR.I don't know how to use --disable-neon only for arm64 and armhf.

john-preston commented 4 years ago

@AliDjango Wow, thanks.

ilya-fedin commented 4 years ago

please make a PR.I don't know how to use --disable-neon only for arm64 and armhf.

This flag shouldn't do anything on other arches, since neon is arm-specific

industrium commented 4 years ago

Try it here : sudo snap install alish-tdesktop --edge use command alish-tdesktop.telegram-desktop to run

Videos - gifs - animated stickers... Everything video related works now I only added --disable-neon

So PR https://github.com/desktop-app/cmake_helpers/pull/19 is not needed any more ?

ilya-fedin commented 4 years ago

So PR desktop-app/cmake_helpers#19 is not needed any more ?

+