遍历目录下所有wav并播放

【esp32-s3】7.2 I2S——播放wav文件 播放音乐 阅读详情
#include "windows.h"
#include <wchar.h>
#include <locale.h>
#include "mmsystem.h"

#pragma comment(lib,"winmm.lib")

int find_all_files(wchar_t* lpPath)
{
    setlocale(LC_ALL, "chs");
    WIN32_FIND_DATA FindFileData;
    wchar_t wcPath[MAX_PATH];
    wcscpy_s(wcPath, lpPath);
    wcscat_s(wcPath, L"\\*.*");
    HANDLE hFind = ::FindFirstFile(wcPath, &FindFileData);
    if (INVALID_HANDLE_VALUE == hFind)
        return -1;

    do
    {
        if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
        {
            if (wcscmp(FindFileData.cFileName, L".") != 0 && wcscmp(FindFileData.cFileName, L"..") != 0)
            {
                //发现子目录,递归之
                wchar_t szFile[MAX_PATH];
                wcscpy_s(szFile, lpPath);
                wcscat_s(szFile, L"\\");
                wcscat_s(szFile, FindFileData.cFileName);
                find_all_files(szFile);
            }
        }
        else
        {
            if (wcswcs(FindFileData.cFileName, L".wav") != 0) {
                wchar_t szFile[MAX_PATH];
                wcscpy_s(szFile, lpPath);
                wcscat_s(szFile, L"\\");
                wcscat_s(szFile, FindFileData.cFileName);
                wprintf(L"%s\n", szFile);
                sndPlaySound(szFile, SND_SYNC);
            }
        }
    } while (::FindNextFile(hFind, &FindFileData));

    ::FindClose(hFind);

    return 0;
}

int main(int argc, char* argv[])
{
    find_all_files(L"C:\\Windows\\Media");
    system("pause");
    return 0;
}
C#音乐播放器(可播放wav &mp3格式) C#音乐播放器 大二写的一个小项目(未联网),基本功能都实现了,基本功能主要包括歌曲切换、歌词展示、添加本地歌曲、用户登录注册(登录进去进行收藏)等等一些功能,下面总结一下各项功能的一些实现思路。 源码地址 ... 阅读详情

相关推荐

madplay命令使用(Linux音乐播放器)

更多资料请点击:我的目录 本篇仅用于记录自己所学知识及应用,代码仍可优化,仅供参考,如果发现有错误的地方,尽管留言于我,谢谢。 madplay命令使用详细参数: -v 获取音乐播放时间 -q 不存在任何打印,但现实警告 -Q 不存在任何打印 –downsample 只采用一半数据 -i 忽略CRC校验错误 -o PATH/xx.wav 可以用来转码,将mp3转为wav,也可以是其他格式。 -a 开启衰减音量 ,增加音量,衰减系统为-175~+18 (当然通过键盘±也可以调整音量) -A 同-

佳佳鸽的博客 1万+

批处理/命令行/CMD后台播放MP3/WAV文件的办法

软件不带参数,使用方法就不用说了吧。还支持播放网络地址的mp3。用得上的可以上去下来试试。需要播放下MP3文件。还有个作者自己的网址。

weihuahello的博客 1381

FPGA实现SD卡WAV音频播放:从存储协议到I2S驱动的全流程解析

在嵌入式系统与数字信号处理领域,存储接口与音频编解码是两项基础且关键的技术。其核心原理在于通过特定的通信协议(如SPI、I2S)实现数据的可靠传输与格式转换。掌握这些技术对于开发高性能、低延迟的实时音频系统具有重要价值,广泛应用于消费电子、车载娱乐和工业控制等场景。本文聚焦于一个典型的工程实践:使用FPGA作为核心控制器,构建一个完整的音频播放系统。项目深入剖析了如何通过**SD卡控制器模块**实现FAT32文件系统的轻量级解析,以及如何利用**FIFO缓冲机制**解决异步数据流的速度匹配问题,确保从存储介

weixin_31534091的博客 241

工作任务: 批量处理wav音频文件--shell脚本

工作任务: 批量处理wav音频文件--shell脚本 #!/bin/bash # 处理音频 deal_with_wav() { for i in $(seq 10 10 180) do for j in $(seq -f "%04g" 0002 2 0040) do ...

豆子 724

STM32F103纯软件WAV播放器:DAC+DMA+FATFS完整方案

在嵌入式系统开发中,音频播放常依赖专用解码芯片,但理解从存储介质读取音频数据到DAC输出的完整链路,对深入掌握系统底层工作原理至关重要。WAV格式作为未压缩的PCM数据,无需复杂解码算法,非常适合用来实现纯软件播放方案。STM32F103系列微控制器凭借内置12位DAC、定时器触发DMA以及FATFS文件系统支持,能够实现44.1kHz采样率的单声道音频播放。从解析RIFF容器结构,到通过SD卡读取文件,再到用定时器精确定时触发DMA搬运数据,整个过程涉及文件系统、外设驱动、中断设计和状态机实现,是嵌入式开

weixin_31858171的博客 218

命令行播放器

这些软件对一些批处理爱好者来说是福音了,他们能在命令行下面播放音乐,让你的批处理文件也能发声,爽吧 gplay gplay 使用 DirectShow 来播放,支持 MP3、wav、wma、mid 等格式。文件名支持通配符、能播放 url。 示例: gplay *.mp3 *.wav gplay http://pub.keygenmusic.org/mp3/Razor1911/Razor1911 - Gothic 3trn.mp3 cmdmp3win cmdmp3win 不会打开 cmd 窗口,适合后台播放。支持 MP3、wav、wma、mid 等格式。只能播放单个文件。 bassmod20 用来播放 IT/XM/S3M/MTM/MOD/UMX 格式的音频。 mpg123-1.13.1-static-x86 MP3 播放器。可以播放列表文件、随机播放... madplay-0.15.2b 支持通配符 -z 随机播放 -r 循环播放 P 暂停、S 停止、Q 退出、F 下一首、B 上一首。 (注: 不能使用双引号。所以路径含有空格时,要用短名。)

播放失败246106异常代码_听音乐不过瘾?自制一个音乐播放器!| 原力计划

作者 |灰小猿责编 | 夕颜出品 | 优快云博客最近在学习C#的GUI编程时想着自制一个播放器,说干就干。其实C#除了在游戏开发上具有显著优势以外,在winform交互页面设计和web网站开发上也是独树一帜的。那么对于使用C#自己开发一个音乐播放器,首先应该了解的当然就是播放器的基本构成了,毕竟知己知彼方能百战不殆嘛,和我们平常使用的音乐播放器一样。我们制作的播放器当然也应该具有对音...

weixin_39845825的博客 1642

python读取wav文件

python读取wav文件

JAVA: JavaFX 动态加载目录下所有WAV文件并逐个播放

不过,需要注意的是,JavaFX本身并不直接支持音频播放,但你可以使用Java的标准库来播放音频,并在JavaFX应用中同步这些操作。下面是一个简单的示例代码,它展示了如何遍历目录并播放。在JavaFX中动态加载一个目录下的所有。文件并逐个播放,你可以使用。包来遍历目录,并使用。

jasonhongcn的专栏 565

02.Palantir Foundry平台功能和应用全景图

本文深入解析 Palantir Foundry 平台核心功能与应用全景。

684

基于 VS Code + CMake + Make + GNU工具链 + OpenOCD 的通用MCU开发环境搭建教程

以CH32V307(RISCV)和STM32F103(Cortex-M3)为例的Vscode+gnu单片机环境搭建。

余十三_的博客 2173

c#简易音乐播放器制作(media)

利用c#自带的media(无需任何安装)制作音乐播放器,源码+思路

LYXtosee的博客 2492

从理想光源到部分相干:Abbe与Hopkins模型在计算光刻中的演进与选择

本文深入探讨了计算光刻中Abbe模型与Hopkins模型的演进与选择,分析了理想光源与部分相干光源在光刻仿真中的关键差异。Abbe模型基于理想点光源假设,计算简洁但存在精度局限;Hopkins模型则通过互强度函数和TCC技术,更准确地模拟现实中的部分相干光源,尤其适用于先进节点光刻工艺。文章还提供了模型选择的实用建议,帮助工程师在精度与效率间取得平衡。

weixin_29217235的博客 295

利用vbscrip写音乐播放器

&lt;SCRIPTLANGUAGE="VBScript"&gt;&lt;!--DimobjFo,objF,objAF,objFfile,objPath,objExtFunctionFirst()setobjFo=CreateObject("Scripting.FileSystemObject")'对象setobjFfile=objFo.OpenTextFile("music.m3u",2,...

iteye_10465的博客 203

分布式存储系统关于GDPR条例中的数据清除原则

文章目录前言HDFS存储系统数据的完全删除基于加解密的输入输出流的数据保护方案 前言 关于GDPR是什么,可能许多同学之前并不太了解,至少笔者在之前也是不清楚的。GDPR全称为通用数据保护条例,General Data Protection Regulation。它是一项来自欧盟的关于计算机数据保护相关的条约,旨在规范系统如何收集,管控用户私人数据的种种行为。但是当前的一些存储系统并没有完全符合...

走在前往架构师的路上 3623

TI 实时操作系统SYS/BIOS使用总结

1:概述: SYS/BIOS 是一个可扩展的实时的操作系统。具有非常快速的响应时间(在中断和任务切换时达到较短的延迟),响应时间的确定性,强壮的抢占系统,优化的内存分配和堆栈管理(尽量少的消耗和碎片)。能够实现系统的模块化并可裁剪。 最大的特点就是:实时。 2:XDCtools: XDCtools 是SYS/BIOS引用的一种实时的软件组件技术(RTSC),它包括一些有用的工具,标准的AP

带头奋青的博客 5万+

ESP-IDF+vscode开发ESP32第十讲——I2S工程2

本文介绍了基于ESP32开发板的SD卡音频播放系统实现。主要内容包括: 采用外置SD卡存储音频文件,解决内部Flash容量不足问题;使用I2S接口连接音频解码芯片ES8311 实现双缓冲区机制提高播放流畅度;关键技术实现:SD卡FAT32文件系统挂载与文件操作;WAV音频文件解析(跳过44字节头部);I2S音频数据传输配置;多任务协同处理(SD读取与音频播放)。该系统实现了高质量音频播放功能,通过合理的缓冲区设计和任务调度,确保了播放过程的流畅性,为嵌入式音频应用提供了完整解决方案。

Pai_SM的博客 495

自适应粒子群优化(Adaptive Particle Swarm Optimization,APSO

下面是一个关于自适应粒子群优化(Adaptive Particle Swarm Optimization,APSO)的博客,希望可以帮助您。提示:以下是本篇文章正文内容,下面案例可供参考在上面的代码中,表示粒子的数量,表示解空间的维度,表示迭代次数,表示优化的目标函数。在__init__方法中,我们初始化了粒子群的位置和速度,并将每个粒子的位置作为其最优解,将其适应度值初始化为正无穷。我们还初始化了学习因子和惯性权重的参数。在run方法中,我们迭代了次,计算每个粒子的适应度值和最优解。

weixin_52026057的博客 9913

python读取wav文件的播放时长

import wave import os.path # 音频存放文件夹相对路径 filedir = os.getcwd() # 获取目录下所有文件 files = os.listdir(filedir) # 获取目录下所有的WAV文件 wav_files = list() for i in files: if os.path.splitext(i)[1] == '.WAV': wav_files.append(i) # 文件名按照数字大小排序 wav_files.sort(key.

m0_37141848的博客 1206

主流算力卡性能对比分析

超大规模AI训练/HPC:优先选择NVIDIA H100或AMD MI300X,需关注显存带宽和多卡互联能力。企业级AI训练:NVIDIA A100性价比更高,生态成熟。国内自主可控需求:华为昇腾910B是首选,支持液冷和低功耗设计。本地AI推理/游戏:NVIDIA RTX 4090或RTX 5090性价比突出,但需注意显存容量限制。边缘计算/低功耗场景:华为昇腾310或清微智能TX536(能效比6.3TOPS/W@INT8)更合适。

m0_69867914的博客 7795

激光焦点动态跟踪技术实战大揭秘:电容式与同轴视觉的巅峰对决

激光焦点动态跟踪技术是保证激光加工质量的关键因素。本文对比评测了电容式和同轴视觉两种主流技术:电容式响应速度快、成本低,适合高速稳定加工环境,但易受电磁干扰;同轴视觉精度高、抗干扰强,适合精密加工和复杂工件,但成本较高且处理速度受限。评测结果表明,企业应根据加工需求、预算和环境选择合适技术。未来该技术将向智能化、多技术融合方向发展,为工业应用提供更优解决方案。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 124

ESP32+MAX98357实现WAV流式播放与I²S驱动详解

WAV流式播放是嵌入式音频系统的核心能力,指不依赖完整文件加载、而是边读取边解码输出的实时音频处理方式;其底层依赖I²S数字音频总线提供的确定性时序与高吞吐能力。I²S协议通过BCLK、LRCLK和SDIN三线协同,确保采样率精准同步与低抖动数据传输,成为ESP32驱动外部DAC(如MAX98357)的首选接口。该技术显著提升IoT设备本地语音响应的实时性与可靠性,广泛应用于智能告警、农业终端、语音交互控制器等需低延迟、可中断、高鲁棒性的场景。本文聚焦ESP32平台下WAV流式播放的硬件约束、双缓冲DMA架

weixin_34245749的博客 210

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

基于STM32的WAV音乐播放器开发:从DAC到FATFS完整实现

数字模拟转换器(DAC)是嵌入式系统中实现模拟信号输出的核心组件,其工作原理是将数字信号转换为连续的模拟电压。在音频处理领域,DAC的技术价值在于能够高质量还原数字音频数据,结合文件系统读取实现完整的播放功能。STM32系列微控制器内置高精度DAC外设,通过定时器精确控制采样率,配合FATFS文件系统可实现对SD卡中WAV格式音频文件的解码与播放。这种技术方案广泛应用于便携式音乐播放器、车载音响系统等嵌入式音频设备。本文以STM32F103为例,详细解析DAC音频输出、双缓冲区管理和WAV文件解析等关键技术

benben 373

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Module Federation 依赖隔离实战:共享代码却不共享状态(isolate-shared-dependencies 深入解析)

本指南围绕 module-federation-examples 仓库中的 [isolate-shared-dependencies 示例](https://link.gitcode.com/i/a6b3c9177d1634b40905d8c6c28b82cc) 展开,讲解如何在 Module Federation 场景下做到"共享依赖的代码、但隔离依赖的状态"——通过一个可组合的 runtime

gitblog_00863的博客 132

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

php 音频顺序播放,解析WPF实现音频文件循环顺序播放的解决方法

要做基于WPF的音频文件循环顺序播放首先要了解WPF下有哪些类是用于控制音频的.WPF下主要有两个音频控制的类,这里做下比较:1.SoundPlayer2.MediaPlayer派生MediaElement一.SoundPlayer类    1.基于.NET FRAMEWORK 2.0;2.可播放WAV音频文件;3.只能播放一个文件,同时播放多个文件会后一个文件的播放操作会终止前一个播放的文件;4...

weixin_42415036的博客 259
上一篇: 禁止弹MessageBoxA.Dll
下一篇: python 3.x 图片下载
「已注销」
博客等级 码龄14年 71粉丝 92原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值