Я нашел решение для передискретизации видео в формате .mp4, снятого камерой на устройстве, чтобы уменьшить его (изменение размера по разрешению, битрейту и частоте кадров). Проблема в том, что он не переносит звук.
Я рассмотрел несколько различных вариантов попытки получить звук из моего исходного (большого) mp4 и вставить его в мой меньший mp4, и мне кажется, что ни одна из этих процедур не работает правильно.
Я пробовал следующее: 1) извлечение звука PCM из источника с помощью: Как извлечь аудио в mp3 из mp4 с помощью java в Android? 2) преобразовать PCM в M4A, а затем добавить M4A в меньший MP4, используя: https://github.com/tqnst/MP4ParserMergeAudioVideo/blob/master/Mp4ParserSample-master/src/jp/classmethod/sample/mp4parser/MainActivity.java
это метод, к которому я подошел ближе всего, но звук был очень медленным и совсем не совпадал с видео в меньшем mp4.
Я также пробовал «прямую копию» из одного mp4 в другой с вариацией этого: Объедините несколько аудиофайлов mp4 с помощью MediaMuxer Android
это сделало мой меньший mp4 на самом деле больше (по размеру файла), чем мой исходный mp4, и на самом деле не переместил звук.
Документация Android для MediaMuxer довольно ужасна, и я не могу понять, что мне нужно сделать, чтобы это работало. Вроде бы задача должна быть довольно тривиальной ....
Любые предложения или советы будут приняты с благодарностью.
TIA