查看: 3282|回复: 3

[其他] 每天解决一个问题18天1问 :wav文件数据提取为ASCII码

[复制链接]
  • TA的每日心情
    开心
    2018-7-23 21:04
  • 签到天数: 103 天

    连续签到: 1 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    16701
    最后登录
    1970-1-1
    发表于 2015-9-11 21:30:55 | 显示全部楼层 |阅读模式
    本帖最后由 lkl0305 于 2015-9-11 22:36 编辑

    昨天完成了WAV文件裁剪,把3m的WAV文件裁剪成30多K的一个片段,可参见:

    wav文件裁剪

    ===================================================

    一、问题描述:
    准备把上次裁剪好的WAV声音存储在FLASH中,首先必须把WAV文件的编码提取出来,
    3802.jpg
    而编码如图:
    3816.jpg
    问题是WAV编码是二进制,不是ASCII码,不能直接复制粘贴到程序中。
    那今天就来解决这个问题,如何将WAV文件的编码转成ASCII码,以便放到程序中。
    像这样的结果:
    3801.jpg

    二、解决办法:
    这个过程我写了一个小程序,C语言的,不想做界面,就用大家上学时学的TC20吧:
    3800.jpg
    这个是不是很熟悉?
    1、这个首先在主函数中取得传递进来的需要转换的wav文件名:
    3804.jpg
    2、打开wav文件指针和c程序文件指针
    3805.jpg
    3、计算需要转换的wav文件长度:
    3806.jpg
    4、在目标c文件中输入wav声音数组的名称:
    3807.jpg
    5、读取wav文件,将二进制转成ascii码:
    3808.jpg
    6、最后一行的处理:
    3809.jpg
    7、结束c程序,关闭文件指针:
    3810.jpg
    8、中间用到了二进制转ASCII码的子程序
    3803.jpg
    9、在TC中生成Exe文件,并把声音文件拷贝在同一目录下:
    3812.jpg
    10、进入命令提示符环境,执行自己写的小程序,可以看到很快结束了,提示转换完成1
    3811.jpg
    11、这个程序生成了.c文件:
    3813.jpg
    12、打开可以看到,生成的c语言声音数组文件:
    3814.jpg
    13、可以和winhex软件下的对比,文件本成功转换了!
    3815.jpg
    14、为方便网友,把源程序和生成的exe给大家传上来,需要的收藏
    声音文件: 00.wav.rar (22.39 KB, 下载次数: 4)
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2017-2-9 14:16
  • 签到天数: 17 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    25

    主题

    1785

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2250
    最后登录
    2024-6-11
    发表于 2015-9-11 23:45:33 | 显示全部楼层
    不错,收藏备用
    freescaleic.org.png
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2016-12-1 10:25
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    12

    主题

    164

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    336
    最后登录
    2020-1-23
    发表于 2015-9-12 08:34:44 | 显示全部楼层
    我也要块,和楼主一起玩
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-23 21:04
  • 签到天数: 103 天

    连续签到: 1 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    16701
    最后登录
    1970-1-1
     楼主| 发表于 2015-9-12 09:59:00 | 显示全部楼层
    adersonl 发表于 2015-9-12 08:34
    我也要块,和楼主一起玩

    恭喜了,随后共同交流哈
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 02:00 , Processed in 0.096170 second(s), 25 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表