回答
我想看看能否libogg C文檔中,並找出如何用C做到這一點。然後使用libogg上的包裝器在C#中編寫幾乎相同的代碼。
我創建使用互操作的助手在libogg和libvorbis低水平包裝: https://github.com/CodesInChaos/Xiph/blob/master/LowLevel.cs
該項目還包含了一些更高級別的結構,但我不認爲他們會爲你有用正在做。
BTW,如果文件之間的流ID不同,您可以將文件簡單地追加到另一個創建序列中都起着流的有效文件。
你可能需要讀取輸入文件分組明智使用解碼API,然後聰明的寫出來包的組合數據。可能替換之間的流ID和granulepos。
流ID是標識在OGG文件子的整數。要附加多個這樣的子流,您可以簡單地確保它們具有不同的ID,然後寫入數據。
分裂是比較討厭的一點,因爲granulepos是編解碼器相關的時間戳,我不記得它是如何爲Vorbis格式定義。這裏的另一個問題是,你不能簡單地在沒有重新編碼的情況下拆分數據包。
我正在使用Xiph Interop庫(http://oggvorbisinterop.codeplex.com/)。我必須使用哪些方法來達到我的目的? –
或我的代碼中使用 –
你可以用libzplay做到這一點http://libzplay.sourceforge.net/ 做所需的步驟正在問:
- 的OpenFile
- 尋求
- SetWaveOutFile(該支持.OGG出口以及其他 格式)
- StartPlayback
- StopPlayback(在需要時)
對於多種語言(包括c#),鏈接網站上的所有內容都非常詳細。
這個答案適用於所有其他花費了數小時搜索時間並且沒有得到以前答案幫助的人。這並不是解決這個問題的一個非常有效的解決方案,但是在搜索這個問題時出現了很多次,這可能對其他人有幫助。 :)
上帝保佑你ntw1103。這正是我需要的。我不知道當我花了一個星期Google和.NET的ogg vorbis時它沒有出現。 – bulltorious
許可證(GNU GPL)如何影響分銷和銷售? – jjxtra
- 1. 的Ogg/Vorbis格式:_ov_fopen無法找到
- 2. Ogg Vorbis標頭規格
- 3. 使用沒有Ogg的Vorbis?
- 4. C++ - FFmpeg Ogg/Vorbis解碼
- 5. 用於Windows的Python Ogg Vorbis包裝
- 6. 問題編碼WAV成的Ogg Vorbis
- 7. objective c - 將mpmediaitem轉換爲ogg vorbis
- 8. Audio Ogg Vorbis Android默認瀏覽器
- 9. 在Python中將wav轉換爲ogg vorbis
- 10. 如何解碼ogg vorbis文件java?
- 11. Vorbis SPI爲OGG文件拋出UnsupportedAudioFileException
- 12. 使用Ogg Vorbis SPI解碼.ogg文件對於小文件大小失敗
- 13. Ogg格式的錄音?
- 14. 使用Vorbis和n音訊播放OGG文件
- 15. OGG Vorbis:已定義但未使用 - 如何抑制?
- 16. 如何解碼來自ByteBuffer的OGG vorbis數據?
- 17. 如何將錄製的語音編碼爲ogg vorbis?
- 18. 將ogg vorbis編碼添加到我的項目
- 19. Ogg vs amr使用Android的格式
- 20. 如何在Silverlight中播放ogg vorbis文件?
- 21. 將TargetDataLine數據編碼爲Ogg Vorbis文件
- 22. Adobe Flex使用Ogg Vorbis編碼器將「.ogg」文件轉換爲與Sound類一起播放
- 23. MAC OSX英特爾LLVM彙編程序錯誤(導致Vorbis格式OGG裝載機崩潰)
- 24. Java的OGG格式爲WAV轉換
- 25. 流Ogg文件
- 26. 使用ogg或mp3與android?
- 27. 用gstreamer寫ogg球員
- 28. 將多個ogg vorbis文件按順序連接成一個文件與.NET?
- 29. Android Chrome支持哪種ogg?
- 30. 在Android手機中錄製OGG或MP3格式的語音
我試圖閱讀官方的Xiph.org文檔,但我還沒有找到任何有用的方法來達到我的目的。 –
「合併」是什麼意思?簡單的連接? – CodesInChaos
是的,我想簡單地將新文件追加到現有文件 –