Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segfault on aacfixer #3

Open
MrYoda opened this issue May 8, 2018 · 2 comments
Open

Segfault on aacfixer #3

MrYoda opened this issue May 8, 2018 · 2 comments

Comments

@MrYoda
Copy link

MrYoda commented May 8, 2018

Добрый день!

Пробую кучу утилит и сервисов для восстановления одного видео из отпуска. На GitUp Git2 писал видео отрывками, используя функцию паузы записи (назначив её на боковую клавишу), а по окончании забыл нажать на кнопку полного окончания записи, сразу выключив камеру (хотя запись была на паузе).

Утилиты и сервисы видеопоток восстанавливают хорошо, не исключение и ваша программа. Но вот со звуком беда.
Например, после утилиты звук recover_mp4 какой-то рваный, с паузами, а местами и вовсе ускоренный (даже в плеере секунды бегут быстрее), и если потом муксовать ffmpeg'ом h264 и aac потоки, то в итоговом видео вообще никакой синхронизации - звук кончается на пару минут быстрее видео. Но на данный момент - это самый лучший результат, если говорить о звуке.
Есть ещё сервис fix.video - там в тестовом бесплатном сэмпле восстановленного файла слышно всего пару каких-то щелчков первую секунду, а далее вообще нет звука.
Пока пишу этот issue - жду окончания обработки видео на сервисе restore.media - это как раз монетизационная онлайн-версия утилиты recover_mp4.

Конкретно с вашей программой aacfixer возникает "Ошибка сегментирования":

./aacfixer fixer-headers.aac fixer-out-audio.raw 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

Using parameters:
samplerate:44100, channels:2
Consumed 332, got samples: 0, 10000000 bytes remain
Consumed 332, got samples: 0, 9999672 bytes remain
Consumed 332, got samples: 0, 9999344 bytes remain
Consumed 332, got samples: 0, 9999016 bytes remain
Consumed 332, got samples: 0, 9998688 bytes remain
Consumed 332, got samples: 0, 9998360 bytes remain
Consumed 332, got samples: 0, 9998032 bytes remain
Consumed 332, got samples: 0, 9997704 bytes remain
Consumed 332, got samples: 0, 9997376 bytes remain
Consumed 333, got samples: 0, 9997048 bytes remain
Consumed 332, got samples: 0, 9996720 bytes remain
Consumed 332, got samples: 0, 9996392 bytes remain
Consumed 334, got samples: 0, 9996064 bytes remain
Consumed 332, got samples: 0, 9995736 bytes remain
Consumed 330, got samples: 0, 9995408 bytes remain
Consumed 332, got samples: 0, 9995084 bytes remain
Consumed 332, got samples: 0, 9994756 bytes remain
Consumed 332, got samples: 0, 9994428 bytes remain
Consumed 332, got samples: 0, 9994100 bytes remain
Consumed 332, got samples: 0, 9993772 bytes remain
Consumed 332, got samples: 0, 9993444 bytes remain
Consumed 332, got samples: 0, 9993116 bytes remain
Consumed 333, got samples: 0, 9992788 bytes remain
Consumed 332, got samples: 0, 9992460 bytes remain
Consumed 332, got samples: 0, 9992132 bytes remain
Consumed 332, got samples: 0, 9991804 bytes remain
Consumed 332, got samples: 0, 9991476 bytes remain
Consumed 332, got samples: 0, 9991148 bytes remain
Consumed 332, got samples: 0, 9990820 bytes remain
Consumed 332, got samples: 0, 9990492 bytes remain
Consumed 332, got samples: 0, 9990164 bytes remain
Consumed 332, got samples: 0, 9989836 bytes remain
Consumed 332, got samples: 0, 9989508 bytes remain
Consumed 332, got samples: 0, 9989180 bytes remain
Consumed 333, got samples: 0, 9988852 bytes remain
Consumed 332, got samples: 0, 9988524 bytes remain
Consumed 332, got samples: 0, 9988196 bytes remain
Consumed 332, got samples: 0, 9987868 bytes remain
Consumed 332, got samples: 0, 9987540 bytes remain
Consumed 332, got samples: 0, 9987212 bytes remain
Consumed 347, got samples: 0, 9986884 bytes remain
Consumed 322, got samples: 2048, 9986544 bytes remain
Ошибка сегментирования (сделан дамп памяти)

Система Ubuntu 16.04.4 LTS
Чтобы скомпилировать aacfixer, устанавливал пакеты libfaad2 libfaad-dev, версии:

apt-show-versions libfaad2 faad libfaad-dev 
faad:amd64/xenial 2.8.0~cvs20150510-1 uptodate
faad:i386 not installed
libfaad-dev:amd64/xenial 2.8.0~cvs20150510-1 uptodate
libfaad-dev:i386 not installed
libfaad2:amd64/xenial 2.8.0~cvs20150510-1 uptodate
libfaad2:i386 not installed

Содержимое nals-stat.txt:

$VAR1 = [
          {
            'id' => 0,
            'max' => 0,
            'min' => 16777215
          },
          {
            'min' => 13896,
            'printbytes' => {
                              '019a0006' => 1,
                              '019a0008' => 1,
                              '419a000d' => 1,
                              '419a0006' => 1,
                              '019a0002' => 1,
                              '419a000b' => 1,
                              '419a000f' => 1,
                              '419a0004' => 1,
                              '019a0004' => 1,
                              '019a000b' => 1,
                              '419a0002' => 1,
                              '419a0009' => 1,
                              '019a000f' => 1,
                              '019a000d' => 1
                            },
            'max' => 143236,
            'bytes' => {
                         '��' => 1,
                         'A�' => 1
                       },
            'id' => 1
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 2
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 3
          },
          {
            'max' => 0,
            'id' => 4,
            'min' => 16777215
          },
          {
            'min' => 62676,
            'printbytes' => {
                              '65888000' => 1
                            },
            'max' => 267356,
            'id' => 5,
            'bytes' => {
                         'e��' => 1
                       }
          },
          {
            'min' => 16777215,
            'id' => 6,
            'max' => 0
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 7
          },
          {
            'max' => 0,
            'id' => 8,
            'min' => 16777215
          },
          {
            'id' => 9,
            'max' => 0,
            'min' => 16777215
          },
          {
            'min' => 16777215,
            'id' => 10,
            'max' => 0
          },
          {
            'id' => 11,
            'max' => 0,
            'min' => 16777215
          },
          {
            'min' => 16777215,
            'id' => 12,
            'max' => 0
          },
          {
            'min' => 16777215,
            'id' => 13,
            'max' => 0
          },
          {
            'id' => 14,
            'max' => 0,
            'min' => 16777215
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 15
          },
          {
            'max' => 0,
            'id' => 16,
            'min' => 16777215
          },
          {
            'max' => 0,
            'id' => 17,
            'min' => 16777215
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 18
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 19
          },
          {
            'max' => 0,
            'id' => 20,
            'min' => 16777215
          },
          {
            'min' => 16777215,
            'id' => 21,
            'max' => 0
          },
          {
            'min' => 16777215,
            'id' => 22,
            'max' => 0
          },
          {
            'min' => 16777215,
            'id' => 23,
            'max' => 0
          },
          {
            'max' => 0,
            'id' => 24,
            'min' => 16777215
          },
          {
            'max' => 0,
            'id' => 25,
            'min' => 16777215
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 26
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 27
          },
          {
            'max' => 0,
            'id' => 28,
            'min' => 16777215
          },
          {
            'min' => 16777215,
            'max' => 0,
            'id' => 29
          },
          {
            'min' => 16777215,
            'id' => 30,
            'max' => 0
          },
          {
            'id' => 31,
            'max' => 0,
            'min' => 16777215
          }
        ];
@Algebro7
Copy link

I cannot read Russian, but I'm having a similar problem with aacfixer:

$ ./aacfixer testing-headers.aac testing-out-audio.raw 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

Using parameters:
samplerate:44100, channels:2
Consumed 31, got samples: 2048, 9998470 bytes remain
Consumed 31, got samples: 2048, 9996916 bytes remain
Consumed 31, got samples: 2048, 9995362 bytes remain
Consumed 31, got samples: 2048, 9993808 bytes remain
Consumed 31, got samples: 2048, 9992254 bytes remain
Consumed 54, got samples: 2048, 9991108 bytes remain
Consumed 519, got samples: 2048, 9991061 bytes remain
Consumed 433, got samples: 2048, 9990549 bytes remain
Consumed 356, got samples: 2048, 9990123 bytes remain
Consumed 390, got samples: 2048, 9989774 bytes remain
Consumed 382, got samples: 2048, 9989391 bytes remain
Consumed 375, got samples: 2048, 9989016 bytes remain
Consumed 376, got samples: 2048, 9988648 bytes remain
Consumed 383, got samples: 2048, 9988279 bytes remain
Consumed 382, got samples: 2048, 9987903 bytes remain
Consumed 403, got samples: 2048, 9987528 bytes remain
Consumed 332, got samples: 2048, 9987132 bytes remain
Consumed 430, got samples: 2048, 9986807 bytes remain
Consumed 327, got samples: 2048, 9986384 bytes remain
Consumed 446, got samples: 2048, 9986064 bytes remain
Consumed 326, got samples: 2048, 9985625 bytes remain
Consumed 428, got samples: 2048, 9985306 bytes remain
Consumed 300, got samples: 2048, 9984885 bytes remain
Consumed 326, got samples: 2048, 9984592 bytes remain
Consumed 324, got samples: 2048, 9984273 bytes remain
Consumed 327, got samples: 2048, 9983956 bytes remain
Consumed 424, got samples: 2048, 9983636 bytes remain
Consumed 321, got samples: 2048, 9983219 bytes remain
Consumed 411, got samples: 2048, 9982905 bytes remain
Consumed 339, got samples: 2048, 9982501 bytes remain
Consumed 446, got samples: 2048, 9982169 bytes remain
Consumed 359, got samples: 2048, 9981730 bytes remain
Consumed 370, got samples: 2048, 9981378 bytes remain
Consumed 378, got samples: 2048, 9981015 bytes remain
[...]
Consumed 44, got samples: 0, 9310786 bytes remain
Consumed 0, position:689358
Consumed 182, got samples: 0, 9309575 bytes remain
Consumed 51, got samples: 0, 9308274 bytes remain
Consumed 146, got samples: 0, 9306349 bytes remain
Consumed 43, got samples: 0, 9301790 bytes remain
Consumed 401, got samples: 0, 9298538 bytes remain
Consumed 494, got samples: 0, 9295606 bytes remain
Consumed 34, got samples: 0, 9292518 bytes remain
Consumed 220, got samples: 0, 9291163 bytes remain
Segmentation fault (core dumped)

Let me know if I can provide any other information that would be helpful!

@suuuehgi
Copy link

suuuehgi commented Sep 15, 2018

Same problem/error for me but the result it produced until then work well!

I hope this is of any help:

aacfixer[1530]: segfault at 0 ip 00007f66dbd696fc sp 00007ffcdbfacbc0 error 4 in libc-2.28.so[7f66dbd1a000+14b000]
           PID: 1616 (aacfixer)
           UID: 1000 (usernam)
           GID: 100 (users)
        Signal: 11 (SEGV)
     Timestamp: Sat 2018-09-15 16:45:25 CEST (41min ago)
  Command Line: aacfixer infile.mp4-headers.aac infile.mp4-out-audio.raw
    Executable: /usr/bin/aacfixer
 Control Group: /user.slice/user-1000.slice/session-1.scope
          Unit: session-1.scope
         Slice: user-1000.slice
       Session: 1
     Owner UID: 1000 (usernam)
       Boot ID: 11111111111111111111111111111111
    Machine ID: 11111111111111111111111111111111
      Hostname: hostname 
       Storage: /var/lib/systemd/coredump/core.aacfixer.1000.11111111111111111111111111111111.1616.1537022725000000.lz4
       Message: Process 1616 (aacfixer) of user 1000 dumped core.
    
                Stack trace of thread 1616:
                #0  0x00007f51ad277ad8 __memcpy_sse2_unaligned_erms (libc.so.6)
                #1  0x000055f05182b88e n/a (aacfixer)
                #2  0x00007f51ad1f8223 __libc_start_main (libc.so.6)
                #3  0x000055f05182b1be n/a (aacfixer)

core.aacfixer.1000.11111111111111111111111111111111.1616.1537022725000000.gz

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants