umlaeute / Gem

Graphics Environment for Multimedia (official repository)
https://gem.iem.at
Other
103 stars 30 forks source link

pix_film video playback crashes Gem on opening a big .mov file in linux amd64 #297

Open ritsch opened 2 years ago

ritsch commented 2 years ago

Opening a big 32GB file

Starting program: /usr/bin/pd -nrt -noaudio -nomidi video_standalone.pd
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Detaching after fork from child process 4254]
open: /etc/pd/gem.conf: No such file or directory
open: /home/algo/.config/pure-data/gem.conf: No such file or directory
open: ./gem.conf: No such file or directory
load plugins 'film' in '/home/algo/bm/libs/Gem/'
pattern : /home/algo/bm/libs/Gem/gem_film*.so
dylib loading file '/home/algo/bm/libs/Gem/gem_filmGMERLIN.so'!
dylib loading file '/home/algo/bm/libs/Gem/gem_filmQT4L.so'!
load plugins 'image' in '/home/algo/bm/libs/Gem/'
pattern : /home/algo/bm/libs/Gem/gem_image*.so
dylib loading file '/home/algo/bm/libs/Gem/gem_imageMAGICK.so'!
dylib loading file '/home/algo/bm/libs/Gem/gem_imageSTB.so'!
not reloading 'image' plugins (already 2 loaded)
load plugins 'image' in '/home/algo/bm/libs/Gem/'
pattern : /home/algo/bm/libs/Gem/gem_image*.so
dylib loading file '/home/algo/bm/libs/Gem/gem_imageMAGICK.so'!
dylib loading file '/home/algo/bm/libs/Gem/gem_imageSTB.so'!
load plugins 'model' in '/home/algo/bm/libs/Gem/'
pattern : /home/algo/bm/libs/Gem/gem_model*.so
dylib loading file '/home/algo/bm/libs/Gem/gem_modelASSIMP3.so'!
dylib loading file '/home/algo/bm/libs/Gem/gem_modelOBJ.so'!
load plugins 'record' in '/home/algo/bm/libs/Gem/'
pattern : /home/algo/bm/libs/Gem/gem_record*.so
dylib loading file '/home/algo/bm/libs/Gem/gem_recordQT4L.so'!
dylib loading file '/home/algo/bm/libs/Gem/gem_recordV4L2.so'!
load plugins 'video' in '/home/algo/bm/libs/Gem/'
pattern : /home/algo/bm/libs/Gem/gem_video*.so
dylib loading file '/home/algo/bm/libs/Gem/gem_videoDECKLINK.so'!
dylib loading file '/home/algo/bm/libs/Gem/gem_videoV4L2.so'!
libDeckLinkAPI.so: cannot open shared object file: No such file or directory
not reloading 'film' plugins (already 2 loaded)
not reloading 'image' plugins (already 2 loaded)
[New Thread 0x7fffe98ed700 (LWP 4275)]
[New Thread 0x7fffe90ec700 (LWP 4276)]
[New Thread 0x7fffe88eb700 (LWP 4277)]
[New Thread 0x7fffdbfff700 (LWP 4278)]
Pixelformat not specified for video frame
[New Thread 0x7fffd993b700 (LWP 4279)]

Thread 6 "pd" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffd993b700 (LWP 4279)]
0x00007ffff63a2a0f in bgav_read_video () from /usr/lib/x86_64-linux-gnu/libgmerlin_avdec.so.1
(gdb) bt
#0  0x00007ffff63a2a0f in bgav_read_video () from /usr/lib/x86_64-linux-gnu/libgmerlin_avdec.so.1
#1  0x00007ffff690d8dc in gem::plugins::filmGMERLIN::getFrame() ()
   from /home/algo/bm/libs/Gem/gem_filmGMERLIN.so
#2  0x00007ffff6c9277d in pix_film::grabThread(void*) () from /home/algo/bm/libs/Gem/Gem.pd_linux
#3  0x00007ffff7caeea7 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#4  0x00007ffff7bd6def in clone () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) Quit
(gdb) 

File Info:

 mediainfo data/LEGER_BALLET-MECA_V-KIESLER_1924_PR_org.mov 
General
Complete name                            : data/LEGER_BALLET-MECA_V-KIESLER_1924_PR_org.mov
Format                                   : MPEG-4
Format profile                           : QuickTime
Codec ID                                 : qt   2005.03 (qt  )
File size                                : 35.2 GiB
Duration                                 : 20 min 1 s
Overall bit rate mode                    : Variable
Overall bit rate                         : 251 Mb/s
Encoded date                             : UTC 2022-05-16 06:54:03
Tagged date                              : UTC 2022-05-16 06:54:03
Writing library                          : Apple QuickTime

Video
ID                                       : 1
Format                                   : ProRes
Format version                           : Version 1
Format profile                           : 4444
Codec ID                                 : ap4h
Duration                                 : 20 min 1 s
Bit rate mode                            : Variable
Bit rate                                 : 251 Mb/s
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 24.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:4:4
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 5.052
Stream size                              : 35.2 GiB (100%)
Writing library                          : acf0
Language                                 : English
Encoded date                             : UTC 2022-05-16 06:54:03
Tagged date                              : UTC 2022-05-16 06:54:03
Color primaries                          : BT.709
Matrix coefficients                      : BT.709

Other
ID                                       : 2
Type                                     : Time code
Format                                   : QuickTime TC
Duration                                 : 20 min 1 s
Frame rate                               : 24.000 FPS
Time code of first frame                 : 00:00:00:00
Time code, striped                       : Yes
Title                                    : black
Language                                 : English
Encoded date                             : UTC 2022-05-16 06:54:03
Tagged date                              : UTC 2022-05-16 06:54:03

Gem Info

GEM: Graphics Environment for Multimedia
GEM: ver: 0.94. "Debian/1:0.94-3"
GEM: compiled on 2020/09/24 at 11:20:01 UTC
GEM: maintained by IOhannes m zmoelnig
GEM: Authors :  Mark Danks (original version)
GEM:        Chris Clepper
GEM:        Cyrille Henry
GEM:        IOhannes m zmoelnig
GEM: with help by Guenter Geiger, Daniel Heckenberg, James Tittle, Hans-Christoph Steiner, et al.
GEM: found a bug? miss a feature? please report it:
GEM:    homepage https://gem.iem.at/
GEM:    bug-tracker https://bugs.gem.iem.at/
GEM:    mailing-list https://lists.puredata.info/listinfo/gem-dev/
GEM: compiled for MMX/SSE2 architecture
GEM: using SSE2 optimization
GEM: detected 8 CPUs
GEM: image loading plugins: magick STB
GEM: film loading plugins: gmerlin quicktime4linux
GEM: image saving plugins: STB magick
GEM: model loading plugins: ASSIMP3 OBJ
GEM: video record plugins: QT4L V4L2
GEM: video capture plugins: decklink v4l2
umlaeute commented 2 years ago

this seems to be a problem in the gmerlin backend.

could you try with the quicktime4linux backend ? [loader quicktime4linux( (before opening the file)

kubriel commented 2 years ago

i performed simple test in linux debian bullseye with gmerlin, but it was working well with this 3.5GB file

General
Complete name                            : /home/kubriel/VJ/video/windings.mov
Format                                   : MPEG-4
Format profile                           : QuickTime
Codec ID                                 : qt   0000.02 (qt  )
File size                                : 3.55 GiB
Duration                                 : 7 min 25 s
Overall bit rate mode                    : Variable
Overall bit rate                         : 68.4 Mb/s
Writing application                      : Lavf58.76.100

Video
ID                                       : 1
Format                                   : JPEG
Codec ID                                 : jpeg
Duration                                 : 7 min 25 s
Bit rate mode                            : Variable
Bit rate                                 : 68.1 Mb/s
Width                                    : 1 440 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 4:3
Frame rate mode                          : Constant
Frame rate                               : 30.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 1.460
Stream size                              : 3.53 GiB (100%)
Title                                    : ISO Media file produced by Google Inc.
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709

Audio
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : mp4a-40-2
Duration                                 : 7 min 25 s
Source duration                          : 7 min 25 s
Bit rate mode                            : Constant
Bit rate                                 : 225 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 44.1 kHz
Frame rate                               : 43.066 FPS (1024 SPF)
Compression mode                         : Lossy
Stream size                              : 11.9 MiB (0%)
Source stream size                       : 11.9 MiB (0%)
Title                                    : ISO Media file produced by Google Inc.
Default                                  : Yes
Alternate group                          : 1
mdhd_Duration                            : 445753
umlaeute commented 1 year ago

Obviously Gmerlin-avcodec cannot handle the ProRes codec.