Преобразование аудио 3gp в ogg не работает

У меня есть приложение django, и я использую вызов subprocess.call('avconv -i ' + fileName + ' ' + fileNew, shell = True). Входной файл представляет собой файл .3gp, в котором только монофонический аудиопоток aac преобразован в файл .ogg. Преобразование прошло успешно, но новый файл кажется поврежденным, и звук не воспроизводится.

Вот что я получил после попытки получить информацию для одного из входных файлов:

xxx:/workspace/build$ avconv -i audio.3gp
avconv version 0.8.10-4:0.8.10-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
  built on Feb  6 2014 20:56:59 with gcc 4.6.3
audio.3gp: Invalid data found when processing input

Вот успешное преобразование:

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/workspace/multi-device-audio-project/webapp/../static/data/matpat.3gp':
  Metadata:
    major_brand     : 3gp4
    minor_version   : 0
    compatible_brands: isom3gp4
    creation_time   : 2014-02-17 10:53:36
  Duration: 00:00:20.60, start: 0.000000, bitrate: 13 kb/s
    Stream #0.0(eng): Audio: aac, 8000 Hz, mono, s16, 12 kb/s
    Metadata:
      creation_time   : 2014-02-17 10:53:36
Output #0, ogg, to '/workspace/multi-device-audio-project/webapp/../static/data/matpat.ogg':
  Metadata:
    major_brand     : 3gp4
    minor_version   : 0
    compatible_brands: isom3gp4
    creation_time   : 2014-02-17 10:53:36
    encoder         : Lavf53.21.1
    Stream #0.0(eng): Audio: flac, 8000 Hz, mono, s16, 200 kb/s
    Metadata:
      creation_time   : 2014-02-17 10:53:36
Stream mapping:
  Stream #0:0 -> #0:0 (aac -> flac)
Press ctrl-c to stop encoding
size=     216kB time=20.66 bitrate=  85.5kbits/s
video:0kB audio:214kB global headers:0kB muxing overhead 0.612994%

Вот один из примеров файлов: ссылка

Следующие строки использования также возвращают мне ошибку: audio.3gp: Неверные данные обнаружены при обработке ввода::

avconv -i audio.3gp -vn -acodec libvorbis -aq 50 audio.ogg
avconv -i audio.3gp -acodec vorbis audio.ogg

Могут ли входные файлы быть повреждены, я думаю, они записаны на Nexus 7?


person Petar Yordanov    schedule 23.02.2014    source источник


Ответы (1)


В конце концов я смог обнаружить источник проблемы. Как я и ожидал, файлы .3gp не были созданы должным образом, поскольку они содержали только аудиоинформацию, из-за чего avconv не мог их распознать и преобразовать. Изменение приложения для работы с .aac решило проблему.

person Petar Yordanov    schedule 25.02.2014