发新帖本帖赏金 40.00元(功能说明)我要提问
12
返回列表
打印

『已完结』『活动』暮春三月,火舞喊你来寻找最美波形

[复制链接]
楼主: zhanzr21
手机看帖
扫描二维码
随时随地手机跟帖
21

使用特权

评论回复
22
地瓜patch| | 2017-3-17 22:26 | 只看该作者
经鉴定是男版主

使用特权

评论回复
评论
zhanzr21 2017-3-18 01:51 回复TA
多谢捧场本人的确是DS一枚, 快来参加活动! 
23
zhanzr21|  楼主 | 2017-3-22 13:14 | 只看该作者
自顶一贴!

使用特权

评论回复
24
zhanzr21|  楼主 | 2017-3-23 23:12 | 只看该作者
人气不旺, 自顶一贴!

使用特权

评论回复
25
zhanzr21|  楼主 | 2017-3-24 21:23 | 只看该作者
自顶一贴, 很好的活动!

使用特权

评论回复
26
shanan| | 2017-3-25 23:39 | 只看该作者
本帖最后由 shanan 于 2017-3-25 23:51 编辑

#!/bin/python
#Example source code for 21ic
#Default runs in Python 3.5 Environment
#Author: zhanzr21
#Description: This Example demonstrates how to generate raw audio data.
#
import os
import math
import random

TEST_SAMPLE_RATE = 22050
TEST_SAMPLE_LEN_SEC = 1.5

TEST_SAMPLE_NUM = int(TEST_SAMPLE_RATE * TEST_SAMPLE_LEN_SEC)

CHAN_NO = 1

AUDIO_HZ = 600
AUDIO_CYCLE = (TEST_SAMPLE_RATE/AUDIO_HZ)

PULSE_HZ = 5
PULSE_CYCLE = (TEST_SAMPLE_RATE/PULSE_HZ)

test_amp_gain = 0.75
INT16_MAX = 32767
INT16_MIN = -32768

f=open('test.raw',mode='wb')

for i in range(0, TEST_SAMPLE_NUM):
# Sine Wave
    #test_sample = int(INT16_MAX * test_amp_gain * (math.sin(math.pi*2*(i%AUDIO_CYCLE)/AUDIO_CYCLE)))
# Square Wave
    #test_sample = int(test_amp_gain * (INT16_MAX if ((i%AUDIO_CYCLE)>(AUDIO_CYCLE/2)) else INT16_MIN))
# Saw wave
    #test_sample = int(test_amp_gain * (INT16_MIN + (i%AUDIO_CYCLE)*((INT16_MAX-INT16_MIN)/AUDIO_CYCLE)))
# Triangle wave
    #test_sample = int(test_amp_gain * (INT16_MIN + (i%AUDIO_CYCLE)*(2*(INT16_MAX-INT16_MIN)/AUDIO_CYCLE)) if ((i%AUDIO_CYCLE)<(AUDIO_CYCLE/2)) else (INT16_MAX - (i%AUDIO_CYCLE)*(2*(INT16_MAX-INT16_MIN)/AUDIO_CYCLE)))
# Random Number
    #test_sample = random.randint(INT16_MIN, INT16_MAX)
# Pulse Sine Wave
    #test_sample = int(INT16_MAX * test_amp_gain * (math.sin(math.pi*2*(i%AUDIO_CYCLE)/AUDIO_CYCLE))) if (0==(i//PULSE_CYCLE)%2) else 0
# Ladder Wave from 21ic ID: shanan
    if ((i%AUDIO_CYCLE)>(AUDIO_CYCLE*0.8)):
        test_sample = int(test_amp_gain * INT16_MAX)
    elif ((i%AUDIO_CYCLE)>(AUDIO_CYCLE*0.6)):
        test_sample = int(test_amp_gain * INT16_MAX*0.75)
    elif ((i%AUDIO_CYCLE)>(AUDIO_CYCLE*0.4)):
        test_sample = int(test_amp_gain * INT16_MAX*0.5)
    elif ((i%AUDIO_CYCLE)>(AUDIO_CYCLE*0.2)):
        test_sample = int(test_amp_gain * INT16_MAX*0.25)
    elif ((i%AUDIO_CYCLE)>0):
        test_sample = 0
    else:
        test_sample = 0

    test_ba = bytearray()
    test_ba.append(test_sample&0x00ff)
    test_ba.append((test_sample>>8)&0x00ff)
    f.write(test_ba)

f.close()

test.rar (200 Bytes)
generate_raw_audio.rar (787 Bytes)

使用特权

评论回复

打赏榜单

zhanzr21 打赏了 20.00 元 2017-03-27
理由:成功提交代码!

评论
zhanzr21 2017-3-26 01:35 回复TA
Good, 已经验证! 
27
荣丰宇| | 2017-3-27 13:23 | 只看该作者
虽然参加活动的人比较少,但是希望楼主可以**做下去,加油~持续关注

使用特权

评论回复
28
zhanzr21|  楼主 | 2017-3-27 17:04 | 只看该作者
活动阶段性结束, 请期待下次活动!

使用特权

评论回复
29
荣丰宇| | 2017-3-31 19:48 | 只看该作者
收到第一次活动的额外奖品啦,一个小米耳机

很想参加第二次活动的,手里正好也有个f722,但是呢,没有功放板,也没有喇叭,哎,,,,周末搞搞了~

使用特权

评论回复
30
zhanzr21|  楼主 | 2017-4-1 13:57 | 只看该作者
荣丰宇 发表于 2017-3-31 19:48
收到第一次活动的额外奖品啦,一个小米耳机

很想参加第二次活动的,手里正好也有个f722,但是呢,没有功放 ...

用DAC可以直接驱动你手上这个耳机的

使用特权

评论回复
31
荣丰宇| | 2017-4-1 15:14 | 只看该作者
zhanzr21 发表于 2017-4-1 13:57
用DAC可以直接驱动你手上这个耳机的

嗯嗯,就是声音肯定比较小,外放是不行了

使用特权

评论回复
32
zhanzr21|  楼主 | 2017-4-1 17:34 | 只看该作者
荣丰宇 发表于 2017-4-1 15:14
嗯嗯,就是声音肯定比较小,外放是不行了

实际上声音不小, ST的DAC有buffer,
根据我的实验, buffer打开了,甚至有太吵的感觉
当然跟耳机的阻抗特性有关, 我做实验用的32Ohm的耳机

使用特权

评论回复
33
zsz888| | 2017-5-12 10:32 | 只看该作者

使用特权

评论回复
发新帖 本帖赏金 40.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则