一,简介
本文主要介绍,如何在C语言代码中将音频流数据进行写入文件,方便调试定位问题:
二,函数实现
按int8_t写入
#include <stdio.h>
int32_t write_int8_t_data(int8_t *name, int8_t *buffer, int32_t data_len)
{
FILE *fp = NULL;
fp = fopen(name, "ab");
if(fp == NULL){
printf("fopen %s failed!\n", name);
return -1;
}
fwrite(buffer, sizeof(int8_t), data_len, fp);
fclose(fp);
return 0;
}
按int16_t写入:
int32_t write_int16_t_data(int8_t *name, int16_t *buffer, int32_t data_len)
{
FILE *fp = NULL;
fp = fopen(name, "ab");
if(fp == NULL){
printf("fopen %s failed!\n", name);
return -1;
}
fwrite(buffer, sizeof(int16_t), data_len, fp);
fclose(fp);
return 0;
}
按照int32_t写入:
int32_t write_int32_t_data(int8_t *name, int32_t *buffer, int32_t data_len)
{
FILE *fp = NULL;
fp = fopen(name, "ab");
if(fp == NULL){
printf("fopen %s failed!\n", name);
return -1;
}
fwrite(buffer, sizeof(int32_t), data_len, fp);
fclose(fp);
return 0;
}
按照int64_t写入:
int32_t write_int64_t_data(int8_t *name, int32_t *buffer, int32_t data_len)
{
FILE *fp = NULL;
fp = fopen(name, "ab");
if(fp == NULL){
printf("fopen %s failed!\n", name);
return -1;
}
fwrite(buffer, sizeof(int64_t), data_len, fp);
fclose(fp);
return 0;
}