当前位置: 代码迷 >> Android >> Android支持ogg格式的音频吗?该怎么解决
  详细解决方案

Android支持ogg格式的音频吗?该怎么解决

热度:64   发布时间:2016-05-01 13:34:16.0
Android支持ogg格式的音频吗?
如题所示,小弟是新手,想请问一下,Android目前是不是支持ogg格式的音频啊?想做个ogg播放器,是不是很难?

------解决方案--------------------
android-sdk/docs/guide/appendix/media-formats.html

这个当然是支持的,
注意其中x表示支持,欧美人的习惯

专门作ogg播放器就没意思了,不难的
------解决方案--------------------
Android 好像支持的音频格式虽然不是很多,但是还是有几个的:比如说:
MP3 wav ogg等
------解决方案--------------------

支持的,

MediaPlayer mp = null;  
int x = GameLet.getResourceID("xxx.ogg");
mp = MediaPlayer.create(myActivity, x );
mp.prepare();
mp.setLooping(true);
mp.start();


------解决方案--------------------
探讨
android-sdk/docs/guide/appendix/media-formats.html

这个当然是支持的,
注意其中x表示支持,欧美人的习惯

专门作ogg播放器就没意思了,不难的

------解决方案--------------------
MediaPlayer(java)在播放多媒体文件的时候,主要分三类播放器(看createPlayer()函数的实现):
(1)MidiPlayer -- *.mid文件
(2)VobisPlayer -- *.ogg文件
(3)PVPlayer -- 除了以上两类之外的所有文媒体文件(底层实现就在opencore里边)

@FROM <android-src>/frameworks/base/media/libmediaplayerservice/MediaPlayerService.cpp

C/C++ code
static sp<MediaPlayerBase> createPlayer(player_type playerType, void* cookie,        notify_callback_f notifyFunc){    sp<MediaPlayerBase> p;    switch (playerType) {#ifndef NO_OPENCORE        case PV_PLAYER:            LOGV(" create PVPlayer");            p = new PVPlayer();            break;#endif        case SONIVOX_PLAYER:            LOGV(" create MidiFile");            p = new MidiFile();            break;        case VORBIS_PLAYER:            LOGV(" create VorbisPlayer");            p = new VorbisPlayer();            break;#if BUILD_WITH_FULL_STAGEFRIGHT        case STAGEFRIGHT_PLAYER:            LOGV(" create StagefrightPlayer");            p = new StagefrightPlayer;            break;#endif        case TEST_PLAYER:            LOGV("Create Test Player stub");            p = new TestPlayerStub();            break;    }    if (p != NULL) {        if (p->initCheck() == NO_ERROR) {            p->setNotifyCallback(cookie, notifyFunc);    // ->setNotifyCallback()        } else {            p.clear();        }    }    if (p == NULL) {        LOGE("Failed to create player object");    }    return p;}
------解决方案--------------------
探讨
ogg估计是Android第一个支持的东东吧,它默认的录音程序产生的文件就是ogg的文件。

------解决方案--------------------
绝对的支持!可以用android.media.MeidaPlayer来做播放器。它已经封装的很好了
------解决方案--------------------
探讨

android-sdk/docs/guide/appendix/media-formats.html
这个我有注意到,但是没有发现其解码在什么地方实现的?有关解码的部分不是在opencore这个框架里面吗?
小弟手上下载了ogg的解码库,想实现一下移植,然后再进行解码.不知可行否?

------解决方案--------------------
探讨

16楼:

谢谢了.收获不小.还有一个疑问,它是怎样实现ogg解码的呢?是硬解码吗?
  相关解决方案