回答
我想看看能否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. 用于Windows的Python Ogg Vorbis包装
- 4. 问题编码WAV成的Ogg Vorbis
- 5. 在Python中将wav转换为ogg vorbis
- 6. Audio Ogg Vorbis Android默认浏览器
- 7. Ogg格式的录音?
- 8. 如何将录制的语音编码为ogg vorbis?
- 9. 如何解码来自ByteBuffer的OGG vorbis数据?
- 10. 将TargetDataLine数据编码为Ogg Vorbis文件
- 11. 如何在Silverlight中播放ogg vorbis文件?
- 12. MAC OSX英特尔LLVM汇编程序错误(导致Vorbis格式OGG装载机崩溃)
- 13. Java的OGG格式为WAV转换
- 14. 流Ogg文件
- 15. 使用ogg或mp3与android?
- 16. 用gstreamer写ogg球员
- 17. 将多个ogg vorbis文件按顺序连接成一个文件与.NET?
- 18. 有没有办法通过HTML5音频元素从Ogg获取MP3或Vorbis评论中的ID3元数据?
- 19. 给定一个x264流和一个ogg vorbis流,我该如何制作mplayer/VLC可以读取的muxed流?
- 20. Rails回形针附件验证失败.ogg格式
- 21. 如何将ogg文件转换为电报语音格式?
- 22. 推荐Android音乐格式 - mp3,ogg还是其他?
- 23. 在Ogg容器中包装Speex格式..如何?
- 24. 通过htaccess文件或标记添加OGG Theora Vorbis音频支持到IX Web Hoting
- 25. 使用Android SDK(OpenSL)解码ogg和其他压缩音频文件格式
- 26. 使用GStreamer将.mp4转换为.ogg
- 27. Alsa以2倍的频率播放vorbis
- 28. 在OGG中录制音频
- 29. 用C转换MP4到Ogg#
- 30. 从Java创建OGG文件
我试图阅读官方的Xiph.org文档,但我还没有找到任何有用的方法来达到我的目的。 –
“合并”是什么意思?简单的连接? – CodesInChaos
是的,我想简单地将新文件追加到现有文件 –