w3
来源:互联网 发布:suse linux yast2 编辑:程序博客网 时间:2024/05/17 23:31
int Id3v2Tag::WritePicToMp3(char *picfile)
{
int flag=0;
FILE *oldfp,*newfp,*picfp;
FRAMELIST *pTemp = m_pFrameList;
int picfileLength;
char *newContent = NULL;
int pos;
while(pTemp != NULL)
{
if(pTemp->frameID == ID3V2_APIC)
{
flag = 1;
break;
}
else
pTemp=pTemp->pNext;
}
picfp = fopen(picfile,"rb");
fseek(picfp,0,SEEK_END);
picfileLength = ftell(picfp);
if(flag == 1)//have apic
{
char *tmp = pTemp->content;
tmp[0]=tmp[0]; //encoding
int len=strlen(tmp+1); //mime type
char type = tmp[len+2]; //pic type
pos =len+3;
do
{
if(((unsigned char)tmp[pos] == 0xff) && ((unsigned char)tmp[pos+1] == 0xd8))
break;
pos+=1;
} while (1);
newContent = (char *)malloc(pos+picfileLength);
memset(newContent,0,pos+picfileLength);
memcpy(newContent,tmp,pos);
free(pTemp->content);
}
else
{
FRAMELIST *node =(FRAMELIST *) malloc(sizeof(FRAMELIST)) ;
memset(node,0,sizeof(FRAMELIST));
node->frameID = ID3V2_APIC;
strcpy(node->frame.FrameID,"APIC");
pTemp = m_pFrameList;
while(pTemp->pNext!=NULL)pTemp=pTemp->pNext;
pTemp->pNext=node;
pTemp = pTemp->pNext;
char *picInfo = (char *)malloc(14);
memset(picInfo,0,14);
picInfo[0]=0;
strcpy(picInfo+1,"image/jpeg");
picInfo[11]=0;
picInfo[12]=0;
picInfo[13]=0;
pos=14;
newContent = (char *)malloc(pos+picfileLength);
memset(newContent,0,pos+picfileLength);
memcpy(newContent,picInfo,pos);
}
- w3
- w3
- w3
- W3 Jmail 使用说明
- W3 Jmail 使用说明
- W3 Jmail中文使用说明
- W3 Jmail 简要介绍
- W3 Jmail 使用范例
- W3 Jmail组件
- 健身日记 [Sep/W3]
- W3 Jmail 参考说明
- W3 Jmail 使用说明
- W3 Jmail 使用说明
- W3 JMail 邮件组件
- www.w3.org
- W3 JMail 邮件组件
- W3-HTML 基础教程笔记
- w3语言学习教程
- 电脑创建无线网---完美软件connectify使用教程
- wwww
- wav格式音频转换成aac格式音频(四)
- try语句块
- HLSL学习2
- w3
- w32
- vi/emacs/shell 搜索文件中的特定字符串
- w33
- lParam 和 wParam
- Asp.net使用HttpModule压缩并删除空白Html请求
- WEB高性能开发:HTML压缩
- try语句的嵌套
- Java 20