爱意满满的作品展示区。
dawncold

raspsound 在树莓派上播放公众号的语音(做得差不多了才发现我没有权限)

  •  
  •   dawncold ·
    dawncold · Feb 20, 2016 · 3816 views
    This topic created in 3736 days ago, the information mentioned may be changed or developed.

    为了能和家中的喵呜呜说话,前几天考虑是不可以发语音到树莓派,后来试了下树莓派是可以发声的,而且有一个 3.5mm 音频输出接口,可以接耳机或其他音响器材,由于以前没怎么用过树莓派播放声音,所以一直没注意到那个接口。

    很自然的考虑用微信录制语音然后发到树莓派上,目前树莓派上放着用 octopress 生成的静态页面,家中是联通的宽带,可以有公网 IP ,但 80 端口被封锁,可以用 443,由于之前买的 SSL 还没过期就一直用着,现在来看使用 letsencrypt 才是主流。

    树莓派上自带的播放软件可以直接播放 amr 格式的音频,微信的语音现在应该大都是 amr 格式的吧?暂时还没遇到另外那个格式的。

    基本都做好了,但发现我无权获取临时素材,微信的语音发出后你的接口可以得到通知,使用通知中的 mediaid 来下载音频文件,但很可惜,这个接口需要微信认证,也就是说和个人公众号无缘了。。。看了眼支付宝的服务窗也暂不接受个人来申请,只能另寻他法。

    Github 地址在这,希望对能力的人有所帮助。

    主要是使用 Python 来完成的,用到的 package 是: requests , rq , redis

    Supplement 1  ·  Feb 20, 2016
    感谢大家提醒,没有权限的可以用测试账号,如果你只想自己用的话,或者申请团队企业号,可以添加自己的应用,或者用易信 api (我没试过)
    Supplement 2  ·  Feb 23, 2016
    喵呜呜说太恐怖了,安静的家里突然出现一个人说话。。。
    16 replies    2016-02-21 13:04:14 +08:00
    Tink
        1
    Tink  
    PRO
       Feb 20, 2016 via iPhone
    主要就是语音借口
    oott123
        2
    oott123  
       Feb 20, 2016
    你如果需要权限,不如申请一个“公众平台测试号”
    或者“企业公众号”
    manhere
        3
    manhere  
       Feb 20, 2016 via iPhone
    我记得微信的语音格式非常规,无法直接播放
    wql
        4
    wql  
       Feb 20, 2016 via Android
    dawncold
        5
    dawncold  
    OP
       Feb 20, 2016
    @oott123 感谢,忘记可以用测试号了,又可以和喵呜呜说话了!
    dawncold
        6
    dawncold  
    OP
       Feb 20, 2016
    @wql
    @manhere

    可以直接播放啊,是正常的 amr 格式文件,已经试过了。
    dawncold
        7
    dawncold  
    OP
       Feb 20, 2016
    @Tink 其实是需要获取素材的接口,音频需要从那里下载
    liuweisj
        8
    liuweisj  
       Feb 20, 2016
    微信对个人不是很开放,你可以改用易信 api
    ETiV
        9
    ETiV  
       Feb 20, 2016
    LZ 可以试试 qy.weixin.qq.com

    组织类型选择"团队", 然后登记一下实名+手机号+微信扫一下就可以有免费无时间限制的各种微信 API 了.

    团队类型的企业号不要求每年三百块的验证. 自用完全够了.
    ETiV
        10
    ETiV  
       Feb 20, 2016
    PS

    而且功能限制比服务号 /订阅号宽松的多...可以无限的下发消息...

    相对于服务号必须要接收人在 48 小时内互动过才能回复的客服消息而言~
    dawncold
        11
    dawncold  
    OP
       Feb 20, 2016
    @liuweisj 好的,我看下
    dawncold
        12
    dawncold  
    OP
       Feb 20, 2016
    @ETiV sounds great
    dawncold
        13
    dawncold  
    OP
       Feb 20, 2016
    @manhere
    @wql

    我的到的 amr 语音总是缺最后一秒的内容,是很奇怪
    dawncold
        14
    dawncold  
    OP
       Feb 20, 2016
    @manhere
    @wql

    用 mplayer 播放挺正常,可能 omxplayer 的解码有点问题,你们说的是直接从设备上提取的 amr 是加密后的吧?
    mrhuiyu
        15
    mrhuiyu  
       Feb 20, 2016
    lz 的树莓派是什么系统额?
    dawncold
        16
    dawncold  
    OP
       Feb 21, 2016   ❤️ 1
    @mrhuiyu
    ```
    pi@raspberrypi ~ $ uname -a
    Linux raspberrypi 4.1.7+ #817 PREEMPT Sat Sep 19 15:25:36 BST 2015 armv6l GNU/Linux
    pi@raspberrypi ~ $ lsb_release -a
    No LSB modules are available.
    Distributor ID: Debian
    Description: Debian GNU/Linux 7.8 (wheezy)
    Release: 7.8
    Codename: wheezy
    ```
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   915 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 20:55 · PVG 04:55 · LAX 13:55 · JFK 16:55
    ♥ Do have faith in what you're doing.