zoukankan      html  css  js  c++  java
  • 音视频转码后合成的一些例子

    1、android上录音AAC/MP3格式,未成功
    https://github.com/turkeyzhu/AACEncoder_Android
    2、通过mp4parser将AAC、h264、mp4格式合成MP4
    https://code.google.com/p/mp4parser/(mp4parser源码)
    https://github.com/sannies/mp4parser(使用mp4parser合成、转码MP4例子,该代码添加了其他东西,需要添加很多依赖库(主要是aspectjrt.jar),可以删减。
    该isoviewer-1.0-RC-35.jar包将mp4parser和aspectjrt.jar合并在一起,很好用。
    isoviewer-1.0-RC-35.jar资源==http://download.csdn.net/detail/smile3670/8174503
    aspectjrt.jar == http://download.csdn.net/detail/smile3670/8174509
    使用例子

     1 public static void main(String[] args) throws FileNotFoundException, IOException {  
     2           
     3         /*Movie m = new Movie(); 
     4         MP3TrackImpl mp3Track = new MP3TrackImpl(new FileDataSourceImpl("D:/tracks/test__mp3.mp3")); 
     5         m.addTrack(mp3Track); 
     6         AACTrackImpl aacTrack = new AACTrackImpl(new FileDataSourceImpl("D:/tracks/aac-sample.aac")); 
     7         m.addTrack(aacTrack); 
     8         Container out = new DefaultMp4Builder().build(m); 
     9         FileOutputStream fos = new FileOutputStream(new File( 
    10                 "D:/tracks/test__mp3.mp4")); 
    11         FileChannel fc = fos.getChannel(); 
    12         out.writeContainer(fc); 
    13         fos.close();*/  
    14           
    15         // mp4音视频合成  
    16         try {  
    17             Movie countVideo = MovieCreator.build("D:/tracks/test__mp3.mp4");  
    18             Movie countAudioEnglish = MovieCreator  
    19                     .build("D:/tracks/test_ount_out.mp4");  
    20             Track audioTrackEnglish = countAudioEnglish.getTracks().get(0);  
    21             countVideo.addTrack(audioTrackEnglish);  
    22             Container out = new DefaultMp4Builder().build(countVideo);  
    23             FileOutputStream fos = new FileOutputStream(new File(  
    24                     "D:/tracks/test_out______.mp4"));  
    25             out.writeContainer(fos.getChannel());  
    26             fos.close();  
    27         } catch (IOException e) {  
    28             e.printStackTrace();  
    29         }  
    30     }  


    3、通过FFMPEG PCM、WAV转mp4。看代码是通过ffmpeg命令转码,ffmpeg支持转码,应该都可以实现,可先用命令试试资源。
    库资源==http://download.csdn.net/detail/smile3670/8174611(里边的ffmpeg支持windows和linux)

     1 File source = new File("D:/audio.wav");  
     2         File target = new File("D:/result.mp4");  
     3         AudioAttributes audio = new AudioAttributes();  
     4         audio.setCodec(null);  
     5         EncodingAttributes attrs = new EncodingAttributes();  
     6         attrs.setFormat("mp4");  
     7         attrs.setAudioAttributes(audio);  
     8         Encoder encoder = new Encoder();  
     9         try {  
    10             encoder.encode(source, target, attrs);  
    11         } catch (IllegalArgumentException e) {  
    12             e.printStackTrace();  
    13         } catch (InputFormatException e) {  
    14             e.printStackTrace();  
    15         } catch (EncoderException e) {  
    16             e.printStackTrace();  
    17         }  



    android编译的ffmpeg==http://download.csdn.net/detail/smile3670/8174669
    WAV转AAC命令==ffmpeg -i aec_out.wav -strict -2 -b:a 32k -y abc.aac(代码实现可以参考ffmpeg支持windows和linux库源码)
    4、录音MP3格式
    通过lame实现,没有库源码,有android源码
    源码==http://download.csdn.net/detail/smile3670/8174821

    原文地址:http://blog.csdn.net/smile3670/article/details/41279749

  • 相关阅读:
    全面理解面向对象的 JavaScript
    账号
    移动端 前端框架 amaze ui
    javascript 精典案例分析一览
    前端事件系统(一)
    周总结12
    周总结11
    相比较于其他的同类软件
    团队冲刺第十五天
    团队冲刺第十四天
  • 原文地址:https://www.cnblogs.com/Sharley/p/5610857.html
Copyright © 2011-2022 走看看