Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException
вообще.
См. также: A хороший список лучших практик
Я бы добавил, очень важно, хорошо использовать модификатор final
. Использование "окончательной" модификатор, когда это применимо в Java
Сводка:
final
для обеспечения хорошей инициализации. @NotNull
и @Nullable
if("knownObject".equals(unknownObject)
valueOf()
поверх toString (). StringUtils
StringUtils.isEmpty(null)
. mp4box, если Вы хотите специальный инструмент; вероятно, самый легкий способ пойти. ffmpeg может сделать задание также.
ffmpeg
является (де) муксером / транскодером общего назначения. MP4Box
является (де) муксером / транскодером из GPAC , пакета, посвященного технологии программного обеспечения MP4. Сейчас кажется более разумным использовать MP4Box, потому что он правит атом moov в начале файла, что важно для потоковой передачи и воспроизведения ipod.
Используйте ffmpeg следующим образом:
ffmpeg -i input.aac -codec: copy output.m4a
Используйте MP4Box так:
MP4Box -add input.aac#audio output.m4a