微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > 付费求助 50D 播放 amr或别的高招

付费求助 50D 播放 amr或别的高招

时间:10-02 整理:3721RD 点击:
hi all:
      我有个设备是50D,需要按一个按键完成报时功能。
我们目前的思路是用AMR格式的 1.amr 2.amr ....这样的资源,放到手机里面,
然后进行播放。
    但我们遇到的点困难,我们没能用代码播放出amr格式的文件。
只能播放wav的,但wav的文件占空间过大,无法放进去。
    希望有人能帮我解决这个问题:按键报时。
可以支付点费用,大家看300元行吗?
QQ:9036178

找SP公司,应当有能播放这类格式的软件。

找sp就麻烦了,他们按台收费。
mtk自带的按个tts能用吗?

amr mtk自带函数可以播放的, 我之前这样做过。但是没试过连续播放几个amr文件

你总的功能可用空间需要控制在多少K呢,MP3格式的应该也可以吧,0-10,11个数字声音,“点”,“分”,共13个,一个MP3
格式平均3k,总共也就40k

我们技术说播放不了 mp3

有办法 播放mp3文件不?
现在只能播放wav.

能告知下如何播放吗?

50D播不了MP3?
把音频文件加载到audio资源ID中,再通过ID播放
如下仅作参考,连续的就加上timer,顺序逐个播放即可
                audio_data = get_audio((U16)(AUD_ID_PROF_NUM1_0 + index), &audio_type, &audio_len);
                mdi_result result = mdi_audio_play_string_with_vol_path(
                                            (U8*) audio_data,
                                            audio_len,
                                            audio_type,
                                            DEVICE_AUDIO_PLAY_ONCE,
                                            sjy_mmi_start_read_incoming_call_cb,
                                            NULL,
                                            srv_prof_get_ring_vol(),
                                            MDI_DEVICE_SPEAKER2);

多谢各位,我对mtk不熟悉,折腾死人了。
搞好了,我把思路过程写下。太感谢各位了。
弄了 我一天一夜,不知道为啥这种东西网上竟然没找到资料,按理来说,做mtk的人都会。
1. 添加声音资源
   plutommi\Customer\Audio\PLUTO 目录下
   把要播放的*.amr放到:
   plutommi\Customer\Audio\PLUTO\UserProfiles\Speech\Cn_Voice
   同时:
   把要播放的*.amr放到
   plutommi\Customer\Audio\PLUTO\audio.zip
   里面 UserProfiles\Speech\Cn_Voice 目录下
2. 添加 声音ID
         ProfilesSrv.res
         文件中添加:
        <AUDIO id="AUD_ID_SPEECH_BEGIN">"..\\\\..\\\\Customer\\\\AUDIO\\\\EmptyAudio.mp3"</AUDIO>
#ifdef __MMI_LANG_SM_CHINESE__
        <AUDIO id="AUD_ID_SPEECH_CN0" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\0.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN1" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\1.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN2" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\2.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN3" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\3.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN4" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\4.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN5" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\5.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN6" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\6.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN7" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\7.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN8" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\8.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN9" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\9.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN10" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\xing.amr"</AUDIO>
        <AUDIO id="AUD_ID_SPEECH_CN11" flag="MULTIBIN">CUST_ADO_PATH"\\\\UserProfiles\\\\Speech\\\\Cn_Voice\\\\jin3.amr"</AUDIO>
        //在这添加ID
#endif
3. 产生ID, make o6 gprs resgen
4. 写代码
   #include "Mdi_audio.h"
#include "Mmi_rp_srv_prof_def.h"
extern U8 *get_audio(MMI_ID_TYPE i, U8 *type, U32 *filelen);
void mlocate_util_play_callback(mdi_result result, void *user_data)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    //g_bgsnd_cntx.setup_playing = FALSE;
    kal_prompt_trace(MOD_BT,"mlocate_util_play_callback: %d\n", result);
}
void mlocate_key_handler(const kal_int16 key_type, const kal_int16 key_code)
{
        kal_prompt_trace(MOD_BT,"mlocate_key_handler: %d-%d\n", key_type, key_code);
        if(key_type == KEY_EVENT_UP)
                {
                    /*----------------------------------------------------------------*/
                    /* Local Variables                                                */
                    /*----------------------------------------------------------------*/
                    U32 audio_len;
                    U8 *audio_data;
                    U8 audio_type;
                    mdi_result result;
                    /*----------------------------------------------------------------*/
                    /* Code Body                                                      */
                    /*----------------------------------------------------------------*/
                      audio_data = get_audio((U16) (AUD_ID_SPEECH_CN12), &audio_type, &audio_len);
                    if (audio_data != NULL)
                    {
                        result = mdi_audio_play_string_with_vol_path(
                                    (void*)audio_data,
                                    audio_len,
                                    audio_type,
                                    DEVICE_AUDIO_PLAY_ONCE,                    
                                    mlocate_util_play_callback,
                                    NULL,
                                    6,
                                    MDI_DEVICE_SPEAKER_BOTH);
                        {
                                kal_prompt_trace(MOD_BT,"mdi_audio_play_string_with_vol_path: %d-%d\n", audio_len, result);
                        }
                    }
                }
}

lz 好同志, 结贴

我现在又有新的问题了。
播出声音效果很差。听都听不清。音源在电脑上播放很清晰。
是不是产生资源的时候有比特率之类的选择?

之前做功能机的时候,依稀记得在来电铃声那块,有一种格式的音频文件,占空间很小的,你就用那种格式的音源,网上也有音视频编辑软件,可以搞个把你的音源修修,弄好以后,在接口那个地方直接调用一下播放你的音频就可以了。手机上的播放效果差,估计是硬件用的便宜货,听筒神马的不好用,还有就是音频参数可能没调好

嗯 估计是音频参数的问题,不会调。不知道有没有朋友能帮调这个声音的参数的?

我不清楚你说的,听不清楚到什么程度,我去年在做仿微信留言软件时,用amr的格式,文件也不大,效果很好,

不错,小编这种精神很好

难道你没有52,23,25之类的代码么,把语音报号移过来不就是了,想播啥播啥

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top