LINUX.ORG.RU
ФорумMobile

Неверное позиционирование файла ogg vorvis.


0

2

Столкнулся с такой загогулиной.

Телефон LG Optimus G e975. Android 4.1.2.
Сконвертил книжку в ogg. Размер 440 мб, около 9 часов воспроизведения.
Играю в Ambling BookPlayer. Ставлю на паузу. Потом нажимаю Play. Плеер перематывает вперед на пол часа и играет с этого места.
При чем, если в начале файла перетматывает на минуты, то в конце ошибка приближается к часу.

Вот инфа этого файла:

$ ogginfo "Бейкер Алан-Перевал Дятлова.ogg"
Processing file "Бейкер Алан-Перевал Дятлова.ogg"...

New logical stream (#1, serial: a904620c): type vorbis
Vorbis headers parsed for stream 1, information follows...
Version: 0
Vendor: Lavf53.21.1
Channels: 2
Rate: 44100

Nominal bitrate: 112,000000 kb/s
Upper bitrate not set
Lower bitrate not set
User comments section follows...
    title=Перевал Дятлова
    artist=Бейкер Алан
    genre=AudioBook
    ALBUMARTIST=
    album=Перевал Дятлова
    date=
    TRACKNUMBER=
    publisher=
    encoded_by=
    copyright=
    composer=
    performer=
    DISCNUMBER=
    TOPE=
    TYER=
    encoder=Lavf53.21.1
Vorbis stream 1:
    Total data length: 444031443 bytes
    Playback length: 605m:50.312s
    Average bitrate: 97,722724 kb/s
Logical stream 1 ended


Но другой файл позиционируется нормально. Вот его инфа:
$ ogginfo "Библиотечный полицейский.ogg"
Processing file "Библиотечный полицейский.ogg"...

New logical stream (#1, serial: 7eb3bdf7): type vorbis
Vorbis headers parsed for stream 1, information follows...
Version: 0
Vendor: Xiph.Org libVorbis I 20101101 (Schaufenugget)
Channels: 2
Rate: 44100

Nominal bitrate: 96,000000 kb/s
Upper bitrate not set
Lower bitrate not set
Vorbis stream 1:
    Total data length: 233554352 bytes
    Playback length: 553m:58.366s
    Average bitrate: 56,213196 kb/s
Logical stream 1 ended


В чем может быть дело?


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

Я не заметил сразу, что ogginfo показывал 605 минут, а плеер 8:48:36 (528 минут). Видимо эту разницу он и пытался компенсировать сдвигая воспроизведение вперед.

Спасибо всем, кто успел прочитать. Тема закрыта.

Axa ()
Ответ на: комментарий от Axa

Продолжение темы. 8)

Не все так просто.
Эффект повторился опять, но на других звуковых файлах.
Видимо реализация проигрывания ogg в Linux и Android сильно различаются.
Думаю это связано с тем, что файлы ogg имеют переменный битрейт. Андроид вероятно не верно вычисляет продолжительность проигрывания такого файла.
Вылечил установкой постоянного битрета при кодировании:

ffmpeg -i concat:in1.mp3|in2.mp3|in3.mp3|in4.mp3 -maxrate 96k -minrate 96k -ab 96k -acodec libvorbis out.ogg
Axa ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.