[Cin] Patches again - filepng, opencv config
Andrew Randrianasulu
randrianasulu at gmail.com
Fri Mar 27 03:35:06 CET 2020
Sorry for insisting on this filepng part - but it was my work,
and I dislike to ship broken feature!
I actually tested Cinelerra git on Ubuntu Live DVD, and
_16 bit_ pngs were broken there without it.
It was as simple as
1) opening the video
2) setting project to rgba-float color format.
3) trying to save png (from non-black area of timeline)
and set options to "with alpha, 16 bits".
By default Cin adds encoded results into resources and on new tracks -
you clearly can see it will be black/broken. 8-bits PNGs are OK.
Ubuntu image I used:
http://mirror.yandex.ru/ubuntu-cdimage/xubuntu/releases/18.04/release/
xubuntu-18.04.4-desktop-amd64.iso - 1.4 Gb
Then I created 4 Gb file in tmpfs, formatted it with btrfs with compression, and booted Live image:
guest at slax:/dev/shm$ wget http://mirror.yandex.ru/ubuntu-cdimage/xubuntu/releases/18.04/release/xubuntu-18.04.4-desktop-amd64.iso
--2020-03-25 13:55:42-- http://mirror.yandex.ru/ubuntu-cdimage/xubuntu/releases/18.04/release/xubuntu-18.04.4-desktop-amd64.iso
Распознаётся mirror.yandex.ru… 213.180.204.183, 2a02:6b8::183
Подключение к mirror.yandex.ru|213.180.204.183|:80... соединение установлено.
HTTP-запрос отправлен. Ожидание ответа… 200 OK
Длина: 1534459904 (1,4G) [application/octet-stream]
Сохранение в: «xubuntu-18.04.4-desktop-amd64.iso»
xubuntu-18.04.4-desktop-amd64.iso 100%[==============================================================================================================>] 1,43G 8,26MB/s за 6m 40s
2020-03-25 14:02:28 (3,66 MB/s) - «xubuntu-18.04.4-desktop-amd64.iso» сохранён [1534459904/1534459904]
guest at slax:/dev/shm$ qemu-sy
qemu-system-aarch64 qemu-system-i386 qemu-system-mips qemu-system-nios2 qemu-system-riscv64 qemu-system-sparc64 qemu-system-xtensaeb
qemu-system-alpha qemu-system-lm32 qemu-system-mips64 qemu-system-or1k qemu-system-s390x qemu-system-tricore
qemu-system-arm qemu-system-m68k qemu-system-mips64el qemu-system-ppc qemu-system-sh4 qemu-system-unicore32
qemu-system-cris qemu-system-microblaze qemu-system-mipsel qemu-system-ppc64 qemu-system-sh4eb qemu-system-x86_64
qemu-system-hppa qemu-system-microblazeel qemu-system-moxie qemu-system-riscv32 qemu-system-sparc qemu-system-xtensa
guest at slax:/dev/shm$ qemu-system-x86_64 -m 2000 -display sdl,gl=on -soundhw es1370 -usb -cdrom xubuntu-18.04.4-desktop-amd64.iso
qemu-system-x86_64: cannot set up guest memory 'pc.ram': Cannot allocate memory
guest at slax:/dev/shm$ qemu-system-x86_64 -m 2000 -display sdl,gl=on -soundhw es1370 -usb -cdrom xubuntu-18.04.4-desktop-amd64.iso
guest at slax:/dev/shm$ qemu-system-x86_64 -m 2000 -display sdl,gl=on -soundhw es1370 -usb -cdrom xubuntu-18.04.4-desktop-amd64.iso -enable-kvm -smp 3
guest at slax:/dev/shm$ qemu-system-x86_64 -m 2000 -display sdl,gl=on -soundhw es1370 -usb -cdrom xubuntu-18.04.4-desktop-amd64.iso -enable-kvm -smp 3
guest at slax:/dev/shm$ dd if=/dev/zero of=4Gb bs=1k count=4M
4194304+0 записей получено
4194304+0 записей отправлено
4294967296 байт (4,3 GB, 4,0 GiB) скопирован, 20,7155 s, 207 MB/s
guest at slax:/dev/shm$ qemu-system-x86_64 -m 2000 -display sdl,gl=on -soundhw es1370 -usb -cdrom xubuntu-18.04.4-desktop-amd64.iso -enable-kvm -smp 4 -hda 4Gb
WARNING: Image format was not specified for '4Gb' and probing guessed raw.
Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
Specify the 'raw' format explicitly to remove the restrictions.
in just a hour I had compiled Cinelerra (by copying git tree from host BEFORE launching qemu)
Note, in such mem-restricted VM you want to use zram (not default in this ubuntu flavor):
as root
modprobe zram
echo 1000000000 > /sys/block/zram0/disksize
mkswap /dev/zram0
swapon /dev/zram0
this will create 1Gb sized compressed swap in ram
I even send email from this virtual setup, but it apparently was stuck in moderation
due to size (over 750 kb).
NOW, I found something really weird!
Patch as attached worked on 64-bit Ubuntu,
but for my system I *must*
place this call to png_set_swap(png_ptr); differently, not before png_write_info(png_ptr, info_ptr);
but AFTER! I actually left both there ....
Still, this is something strange, I'll try to contact libpng author about this.....
Also, I attach my current OpenCV tweaks - trim out unneeded stuff,
fixing two typos, adding -stdc++11 line for my odd system.
I still use opencv-20180401.tgz
I also have two lame (mp3lame) patches, but will send them separately.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: filpeng_16bits_per_ch_fix.diff
Type: text/x-diff
Size: 756 bytes
Desc: not available
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20200327/2de7f0ff/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: openCV4-static-gcc5_more-disable-3.diff
Type: text/x-diff
Size: 1890 bytes
Desc: not available
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20200327/2de7f0ff/attachment-0001.bin>
More information about the Cin
mailing list