2013-02-19 13 views
5

Zastanawiałem się, czy ktoś wie, jak wziąć plik audio MP4 i nakładać go na plik wideo MP4 za pomocą mp4parser na Androida. Udało mi się dołączyć jedno nagranie do drugiego, teraz wystarczy nałożyć surowy plik mp4, który mam nad połączonym plikiem.Połączyć Mp4s za pomocą mp4parser na Androida

Każda pomoc zostanie doceniona!

Odpowiedz

4

Poniższy kod wymienia dwa języki audio i wideo. Powinno być łatwo dostosować go do swoich potrzeb:

public static void main(String[] args) throws IOException { 

    String audioDeutsch = MuxMp4SourcesExample.class.getProtectionDomain().getCodeSource().getLocation().getFile() + "/count-deutsch-audio.mp4"; 
    String audioEnglish = MuxMp4SourcesExample.class.getProtectionDomain().getCodeSource().getLocation().getFile() + "/count-english-audio.mp4"; 
    String video = MuxMp4SourcesExample.class.getProtectionDomain().getCodeSource().getLocation().getFile() + "/count-video.mp4"; 


    Movie countVideo = MovieCreator.build(new FileInputStream(video).getChannel()); 
    Movie countAudioDeutsch = MovieCreator.build(new FileInputStream(audioDeutsch).getChannel()); 
    Movie countAudioEnglish = MovieCreator.build(new FileInputStream(audioEnglish).getChannel()); 

    Track audioTrackDeutsch = countAudioDeutsch.getTracks().get(0); 
    audioTrackDeutsch.getTrackMetaData().setLanguage("deu"); 
    Track audioTrackEnglish = countAudioEnglish.getTracks().get(0); 
    audioTrackEnglish.getTrackMetaData().setLanguage("eng"); 

    countVideo.addTrack(audioTrackDeutsch); 
    countVideo.addTrack(audioTrackEnglish); 

    Container out = new DefaultMp4Builder().build(countVideo); 
    FileOutputStream fos = new FileOutputStream(new File("output.mp4")); 
    out.writeContainer(fos.getChannel()); 
    fos.close(); 

} 
+0

Dźwięk jest nadpisywany, gdy używasz tego kodu .. Jakiej pomocy? –

+1

@Sebastian Ścieżki dźwiękowe są dodawane jedna po drugiej. Czy mimo to mogę dodać dwie ścieżki dźwiękowe i muszą one działać w tym samym czasie i oczywiście wideo. Załóżmy, że mam wideo i dźwięk głosowy, a także muzykę w tle. Teraz chcę, aby te dwa dźwięki działały jednocześnie z wideo. Czy możesz pomóc, w jaki sposób możemy to osiągnąć? – ROCKY

+0

Powyższy kod łączy wideo z dodaną pierwszą ścieżką dźwiękową. Chcę odtwarzać dwie ścieżki audio równolegle z plikiem wideo. Czy ktoś może mi w tym pomóc? –

Powiązane problemy