Перемещение атома moov в начало видео прямо в Android

Я заметил, что атом moov помещен в конец многих видеороликов .mp4. Я бы хотел переместить этот атом в начало видео, чтобы включить прогрессивную загрузку. Есть ли способ сделать это программно в Android без использования каких-либо внешних библиотек? Я не хочу также включать эти двоичные файлы в приложение. Спасибо!


person Jintian Liang    schedule 22.07.2015    source источник


Ответы (1)


Я работал над той же проблемой. Я нашел эту библиотеку: https://github.com/ypresto/qtfaststart-java Это супер приятно использовать. Вот пример:

try {
            QtFastStart.fastStart(fileIn, fileOut);
        } catch (IOException e) {
            // Handle
        } catch (QtFastStart.MalformedFileException e) {
            // Handle
        } catch (QtFastStart.UnsupportedFileException e) {
            // Handle
        }

compile 'net.ypresto.qtfaststartjava:qtfaststart:0.1.0'
person Kirk_hehe    schedule 25.12.2017
comment
Этот пост решил мои проблемы. Следует упомянуть кое-что не интуитивно понятное, так это то, что вы не можете просто поместить один и тот же файл для fileIn в fileOut. Вы должны выполнить некоторую ритуал создания временного файла, а затем переименовать его в исходное имя файла. - person KoalaKoalified; 27.01.2020