精华内容
下载资源
问答
  • 从DOCX创建MP3文件 要求 我们建议这些 或 选修的 脚本和文件 (用于更多语言); 请参阅以下说明,以 (用于其他声音,包括拉丁语和古希腊语) 设置 特征 批量处理 概述 DOCX-HTML.sh是一个bash脚本,可将DOCX文件...
  • 这是一个bash命令保存什么命令,在MP3文件说,因此它适用于仅适用于Mac OS X。 您必须安装了。 如果您不知道如何安装la脚,请按照以下说明操作: $ curl -L -O ...
  • XML格式的ID格式的MP3文件。 可以使用XML在Sasada Segue或Padixo abaixo中执行以下操作: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <name>AUTUMN TEARS <name>ABSOLUTION ...
  • generate-podcast:babashka脚本,用于从本地目录创建带有mp3文件的播客
  • 一个独立于平台的工具(受启发),可以从mp3文件创建tiptoi gme文件。 还创建可打印的纸张来播放音乐。 特征 使用将Tiptoi笔可将音乐/有声读物专辑从mp3转换为gme格式。 自动生成控制纸张,以控制音乐/有声读物的...
  • 播放MP3文件显示歌词源码系统结构:排序LRC时间内容,MCI控制,======窗口程序集1||||------__启动窗口_创建完毕||||------_时钟1_周期事件||||------_按钮1_被单击||||------排序LRC时间内容||||------_按钮
  • 现有元数据可用于此目的(MP3文件:ID3标签,OGG vorbis:注释)。 另请参见网站(下面的链接)。 希望开发人员:愿意将此项目移交给对维护/改进该软件感兴趣的任何人。 如果有兴趣,请联系项目管理员。 有关签出源...
  • 源码包中有2个类 AudioRecorder2Mp3Util 负责录音和转换 MainActivity 用户的操作界面 ...在SDCard中创建与删除文件权限 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
  • 它可以从源文件中创建 MP3 播放器上的文件名,以规避 MP3 播放器的限制并组织目标文件。 现有元数据可用于此目的(MP3 文件:ID3 标签,OGG vorbis:评论)。 另请参阅网站(以下链接)。 想要的开发人员:愿意将此...
  • 自动歌词 是一款可以向mp3文件添加歌词的应用程序。 使用和创建。 由设计的。 建造 $ git clone $ npm install $ npm run build 使用的模块 屏幕截图
  • java读取mp3文件头信息

    千次阅读 2018-12-30 17:56:12
    MP3文件本身就是带有这些信息的 而后在了解到mp3文件有2种标签 ,ID3V1和ID3V2,mp3标签是位于一个 MP3 文件的开头或末尾的若干字节内的数据格式,附加了关于该 MP3 的歌曲名、演唱者、专辑名、标题、年代、歌曲...

    最近在做一个项目的实训,有关于音乐播放的,需要取到一些音乐信息,比如播放时长,演唱歌手,歌曲名称等等信息添加到数据库中。而MP3文件本身就是带有这些信息的

    而后在了解到mp3文件有2种标签 ,ID3V1和ID3V2,mp3标签是位于一个 MP3 文件的开头或末尾的若干字节内的数据格式,附加了关于该 MP3 的歌曲名、演唱者、专辑名、标题、年代、歌曲风格、类型、备注等信息.(相当于注释)

    id3v2是保存在mp3文件开头;id3v1是保存在mp3文件结尾;id3v2&id3v1是同时保存,优先存 id3v2。

    现在常见的应该是ID3V2标签的。

    所以百度过后,发现了一个jar包可以读取到mp3文件信息。

    那么我们这里用到的jar包 是

    
            <!--读取MP3文件-->
            <dependency>
                <groupId>org</groupId>
                <artifactId>jaudiotagger</artifactId>
                <version>2.0.3</version>
            </dependency>

    实现代码:

    我们取信息,需要存储到一个实体类里面,那么我们创建一个Mp3Info类。

    
    /**
     * 类的功能描述
     *
     * @author admin
     * @date 2018/12/22 17:36
     */
    public class Mp3Info {
           //音乐名
        private String songName;
        //歌手名
        private String singerName;
        //专辑名
        private String album;
        //时长
        private Time duration;
    
        public String getSongName() {
            return songName;
        }
    
        public void setSongName(String songName) {
            this.songName = songName;
        }
    
        public String getSingerName() {
            return singerName;
        }
    
        public void setSingerName(String singerName) {
            this.singerName = singerName;
        }
    
        public String getAlbum() {
            return album;
        }
    
        public void setAlbum(String album) {
            this.album = album;
        }
    
        public Time getDuration() {
            return duration;
        }
    
        public void setDuration(Time duration) {
            this.duration = duration;
        }
    
        public Mp3Info() {
        }
    
       
    
        public Mp3Info(String songName, String singerName, String album, Time duration) {
            this.songName = songName;
            this.singerName = singerName;
            this.album = album;
            this.duration = duration;
        }
    
        @Override
        public String toString() {
            return "Mp3Info{" +
                    "songName='" + songName + '\'' +
                    ", singerName='" + singerName + '\'' +
                    ", album='" + album + '\'' +
                    ", duration=" + duration +
                    '}';
        }
    }

    我这里为了调用简单,直接将我们的取信息的方法放入了Mp3Info类里面

        /**
         * @param filePath
         * @Description: 传入MP3文件地址,读取mp3文件信息
         * @Return: com.t.test.TestAll
         * @Auther: admin
         * @Date 2018/12/30 17:34
         */
    
        public Mp3Info getSongInfo(String filePath) {
    
            Mp3Info mp3Info = null;
    
            try {
    //         读取文件信息
                MP3File mp3File = (MP3File) AudioFileIO.read(new File(filePath));
    //            获取头
                MP3AudioHeader audioHeader = (MP3AudioHeader) mp3File.getAudioHeader();
    
                //歌名
                ID3v23Frame songnameFrame = (ID3v23Frame) mp3File.getID3v2Tag().frameMap.get("TIT2");
                String songName = songnameFrame.getContent();
                //歌手
                ID3v23Frame artistFrame = (ID3v23Frame) mp3File.getID3v2Tag().frameMap.get("TPE1");
                String artist = artistFrame.getContent();
                //专辑
                ID3v23Frame albumFrame = (ID3v23Frame) mp3File.getID3v2Tag().frameMap.get("TALB");
                String album = albumFrame.getContent();
                //时长
                int duration = audioHeader.getTrackLength();
    
                mp3Info = new Mp3Info(songName, artist, album, secondToDate(duration));
    
            } catch (Exception e) {
                e.printStackTrace();
            }
    
            return mp3Info;
        }
    
        /**
         * 秒转换为指定格式的日期
         *
         * @param second
         * @return
         */
        public static Time secondToDate(int second) {
            //转换为毫秒,但需要减去最基础的8小时
            Time time = new Time(second * 1000- 8 * 60 * 60 * 1000);
            return time;
        }
    

    最后进行测试

        public static void main(String[] args) {
            Mp3Info songInfo = new Mp3Info().getSongInfo("C:\\Users\\13323\\Music\\薛之谦 - 天份.mp3");
            System.out.println(songInfo);
        }
    

     

    注: 在百度java取MP3文件信息的时候,百度到很多的代码都不完全,要么就是乱码,其实现在很多mp3文件都是id3v2的,而那些代码都是通过id3v1去取得的,对自己造成了很大的麻烦。最后整合了下网上的代码,和自己的修改,才取到了这些信息。

    展开全文
  • 有声读物 小型 PHP 脚本,用于创建目录中所有 mp3 文件的 RSS 提要。 我用它来将有声读物同步到我手机中的播客客户端。
  • AD MP3 Cutter(MP3剪辑)是一款简单易用的MP3文件剪辑工具。剪辑界面十分美观,是用波形动态图的样式表现出来,视觉效果强烈。只需选取需要接取的部分,轻而易举就能达到你想达到的目标。同时AD MP3 Cutter(MP3剪辑)...
  • jaudiotagger获取MP3文件信息及封面图片 jaudiotagger

    #jaudiotagger获取MP3文件信息及封面图片
    ###maven依赖:

    <dependency>
        <groupId>org</groupId>
        <artifactId>jaudiotagger</artifactId>
        <version>2.0.3</version>
    </dependency>
    

    ###java代码:

    • MP3信息对象(自定义):
    public class MP3Info {
        /**
         * 歌曲名字
         */
        private String songName;
    
        /**
         * 歌手名字
         */
        private String singer;
    
        /**
         * 时长(秒)
         */
        private Integer duration;
    
        public String getSongName() {
            return songName;
        }
    
        public void setSongName(String songName) {
            this.songName = songName;
        }
    
        public String getSinger() {
            return singer;
        }
    
        public void setSinger(String singer) {
            this.singer = singer;
        }
    
        public Integer getDuration() {
            return duration;
        }
    
        /**
         * 返回hh:MM:ss形式
         * @return
         */
        public String getDurationFormat() {
            if(duration/60 >= 60) {
                return String.format("%02d",duration/3600) + String.format("%02d",(duration%3600)/60) + ":" + String.format("%02d",duration%60);
            } else {
                return "00:" + String.format("%02d",duration/60) + ":" + String.format("%02d",duration%60);
            }
        }
    
        public void setDuration(Integer duration) {
            this.duration = duration;
        }
    }
    
    
    • MP3工具类:
    import com.springapp.util.domain.MP3Info;
    import org.jaudiotagger.audio.exceptions.InvalidAudioFrameException;
    import org.jaudiotagger.audio.exceptions.ReadOnlyFileException;
    import org.jaudiotagger.audio.mp3.MP3AudioHeader;
    import org.jaudiotagger.audio.mp3.MP3File;
    import org.jaudiotagger.tag.TagException;
    import org.jaudiotagger.tag.id3.AbstractID3v2Frame;
    import org.jaudiotagger.tag.id3.AbstractID3v2Tag;
    import org.jaudiotagger.tag.id3.framebody.FrameBodyAPIC;
    
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    public class Mp3Util {
    
        /**
         * 获取MP3歌曲名、歌手、时长信息
         * @param mp3File
         * @return
         */
        public static MP3Info getMP3Info(File mp3File) {
            MP3Info mp3Info = new MP3Info();
            try {
                MP3File file = new MP3File(mp3File);
                mp3Info.setSongName(toGB2312(file.getID3v2Tag().frameMap.get("TIT2").toString()));
                mp3Info.setSinger(toGB2312(file.getID3v2Tag().frameMap.get("TPE1").toString()));
                MP3AudioHeader audioHeader = (MP3AudioHeader)file.getAudioHeader();
                mp3Info.setDuration(audioHeader.getTrackLength());
            } catch (IOException e) {
                e.printStackTrace();
            } catch (TagException e) {
                e.printStackTrace();
            } catch (ReadOnlyFileException e) {
                e.printStackTrace();
            } catch (InvalidAudioFrameException e) {
                e.printStackTrace();
            }
            return mp3Info;
        }
    
    
        /**
         * 获取MP3封面图片
         * @param mp3File
         * @return
         */
        public static byte[] getMP3Image(File mp3File) {
            byte[] imageData = null;
            try {
                MP3File mp3file = new MP3File(mp3File);
                AbstractID3v2Tag tag = mp3file.getID3v2Tag();
                AbstractID3v2Frame frame = (AbstractID3v2Frame) tag.getFrame("APIC");
                FrameBodyAPIC body = (FrameBodyAPIC) frame.getBody();
                imageData = body.getImageData();
            }catch (Exception e) {
                e.printStackTrace();
            }
            return imageData;
        }
    
    
    
        /**
         *获取mp3图片并将其保存至指定路径下
         * @param mp3File mp3文件对象
         * @param mp3ImageSavePath mp3图片保存位置(默认mp3ImageSavePath +"\" mp3File文件名 +".jpg" )
         * @param cover 是否覆盖已有图片
         * @return 生成图片全路径
         */
        public static String saveMP3Image(File mp3File, String mp3ImageSavePath, boolean cover) {
            //生成mp3图片路径
            String mp3FileLabel = getFileLabel(mp3File.getName());
            String mp3ImageFullPath = mp3ImageSavePath + ("\\" + mp3FileLabel + ".jpg");
    
            //若为非覆盖模式,图片存在则直接返回(不再创建)
            if( !cover ) {
                File tempFile = new File(mp3ImageFullPath) ;
                if(tempFile.exists()) {
                    return mp3ImageFullPath;
                }
            }
    
            //生成mp3存放目录
            File saveDirectory = new File(mp3ImageSavePath);
            saveDirectory.mkdirs();
    
            //获取mp3图片
            byte imageData[] = getMP3Image(mp3File);
            //若图片不存在,则直接返回null
            if (null == imageData || imageData.length == 0) {
                return null;
            }
            //保存mp3图片文件
            FileOutputStream fos = null;
            try {
                fos = new FileOutputStream(mp3ImageFullPath);
                fos.write(imageData);
                fos.close();
            } catch(Exception e) {
                e.printStackTrace();
            }
            return mp3ImageFullPath;
        }
    
    
        /**
         * 仅返回文件名(不包含.类型)
         * @param fileName
         * @return
         */
        private static String getFileLabel(String fileName) {
            int indexOfDot = fileName.lastIndexOf(".");
            fileName = fileName.substring(0,(indexOfDot==-1?fileName.length():indexOfDot));
            return fileName;
        }
        private static String toGB2312(String s) {
            try {
                return new String(s.getBytes("ISO-8859-1"), "gb2312");
            } catch (Exception e) {
                return s;
            }
        }
    }
    
    展开全文
  • espeak-ruby是一个小的Ruby API,用于利用和来创建Text-To-Speech mp3文件。 它也可以说(不保存)。 安装 将espeak-ruby添加到Gemfile gem "espeak-ruby" , require : "espeak" 例子 # Speaks "YO!" speech = ...
  • Ruby脚本,用于将MP3文件转换为HLS流。 安装 将此行添加到您的应用程序的Gemfile中: gem 'mp3-to-hls' 然后执行: $ bundle 或将其自己安装为: $ gem install mp3-to-hls 用法 待办事项:在此处写下使用...
  • Android使用LAME将pcm文件转mp3文件

    千次阅读 2020-02-26 21:58:27
    lame介绍:LAME是一款开源的MP3编码器,被认为是中高比特率和VBR的最佳MP3编码器,质量和速度方面的改进仍在继续,可能使LAME成为仍在积极开发的唯一MP3编码器。使用lame进行mp3编码,需要了解一些NDK相关的知识,...

    Android使用LAME将pcm格式转mp3格式

    lame介绍:LAME是一款开源的MP3编码器,被认为是中高比特率和VBR的最佳MP3编码器,质量和速度方面的改进仍在继续,可能使LAME成为仍在积极开发的唯一MP3编码器。使用lame进行mp3编码,需要了解一些NDK相关的知识,比如jni和cmake。

    准备工作:

    • 下载lame源码:https://lame.sourceforge.io/ 直接下载最新版本,本文使用的是3.100版本
    • android studio新建一个c++ support项目

    集成lame源码

    在cpp目录下,新建一个文件夹lamemp3,将下载的的源码文件中的\lame-3.100\libmp3lame文件夹下的所有.c和.h文件拷贝到lamemp3下并将\lame-3.100\include下的lame.h也拷贝进去,到这里,lame的源码都已经拷贝完成了,接下来,需要修改部分源码内容以及gradle配置参数。

    1)删除fft.c文件的47行的”include “vector/lame_intrin.h”“

    2)修改set_get.h文件的24行的#include“lame.h”

    3)将util.h文件的574行的”extern ieee754_float32_t fast_log2(ieee754_float32_t x);”
    替换为 “extern float fast_log2(float x);”

    需要修改app 下的build.gradle文件

    android {
    ...
        defaultConfig {
        ...
            externalNativeBuild{
                cmake{
                    cFlags "-DSTDC_HEADERS"
                }
            }
        }
    }
    

    接下来,我们编辑cmake,编辑好以后,点击android studio的build下的refresh linked c++ project,关于cmake部分,看cmake文件注释部分,cmake编写方式不局限一种,取决于你对cmake相关方法的了解

    # Sets the minimum version of CMake required to build the native library.
    #设置构建本地库所需的最低cmake版本
    cmake_minimum_required(VERSION 3.4.1)
    #设置库文件导出目录
    set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/lameLibs/${ANDROID_ABI})
    #批量导入c文件和cpp文件
    file(GLOB lame lamemp3/*.c)
    file(GLOB lame2 lamemp3/*.cpp)
    #批量导入头文件
    include_directories(${CMAKE_CURRENT_LIST_DIR}/lamemp3)
    # 创建和给一个库命名,可以设置为静态库
    # 或动态库,并且提供它源码的相关路径
    # 你可以定义多个库,然后cmake为你构建他们
    # gradle会自动打包共享库到你的apk中
    add_library( # Sets the name of the library.
            native-lib
    
            # Sets the library as a shared library.
            SHARED
    
            # 导入所有源文件
            native-lib.cpp
            ${lame}
            ${lame2}
            )
    
    #所有指定的预构建库,并将路径定义为变量,用于后面引入
    find_library( # Sets the name of the path variable.
            log-lib
            # Specifies the name of the NDK library that
            # you want CMake to locate.
            log)
    
    #指令cmake需要链接到的库
    target_link_libraries(
            #指定目标library
            native-lib
            #链接目标库到log库
            ${log-lib})
    

    编写MP3转换的c++实现,

    在cpp/lamemp3文件夹下载新建pcm2pm3.cpp和pcm2pm3.h文件,这里贴出实现部分,完成代码参考项目源码

    //初始化lame
    int pcm2mp3::init(const char *pcm_path, const char *mp3_path, int sample_rate, int channel,
                      int bitRate) {
        int result=-1;
        pcm_file=fopen(pcm_path,"rb");
        if(pcm_file!= NULL){
            mp3_file=fopen(mp3_path,"wb");
            if (mp3_file!= NULL){
                //开始初始化
                lame_client=lame_init();
                lame_set_in_samplerate(lame_client,sample_rate);
                lame_set_out_samplerate(lame_client,sample_rate);
                lame_set_num_channels(lame_client,channel);
                lame_set_brate(lame_client,bitRate);
                lame_set_quality(lame_client,2);
                lame_init_params(lame_client);
                result=0;
            }
        }
        return result;
    }
    //pcm文件转mp3文件
    void pcm2mp3::pcm_to_mp3() {
        int bufferSize = 1024 * 256;
        short *buffer = new short[bufferSize / 2];
        short *leftBuffer = new short[bufferSize / 4];
        short *rightBuffer = new short[bufferSize / 4];
        unsigned char* mp3_buffer = new unsigned char[bufferSize];
        size_t readBufferSize = 0;
        while ((readBufferSize = fread(buffer, 2, bufferSize / 2, pcm_file)) > 0) {
            for (int i = 0; i < readBufferSize; i++) {
                if (i % 2 == 0) {
                    leftBuffer[i / 2] = buffer[i];
                } else {
                    rightBuffer[i / 2] = buffer[i];
                }
            }
            size_t wroteSize = lame_encode_buffer(lame_client, (short int *) leftBuffer, (short int *) rightBuffer, (int)(readBufferSize / 2), mp3_buffer, bufferSize);
            fwrite(mp3_buffer, 1, wroteSize, mp3_file);
        }
    
        delete [] buffer;
        delete [] leftBuffer;
        delete [] rightBuffer;
        delete [] mp3_buffer;
    
    
    }
    

    接下来就是编写jni调用c++方法,定义了三个native方法,一个获取版本号用于测试lame加载是否成功,pcmTomp3进行文件转换,destroy进行相关对象的释放

    public class LameJni {
        static {
            System.loadLibrary("native-lib");
        }
        public native String getVersion();
        //初始化lame
        public native int pcmTomp3(String pcmPath,String mp3Path,int sampleRate, int channel,  int bitRate);
        public native void destroy();
    
    }
    

    然后是对native方法的实现,这里只贴出转换的实现,关于jni的命名规则以及类型转换规则,这里不多赘述,查看jni相关资料即可

    pcm2mp3 *mp3_encoder;
    extern "C"
    JNIEXPORT int JNICALL
    Java_com_david_sampling_util_LameJni_pcmTomp3(JNIEnv *env, jclass clazz, jstring pcm_path,
                                              jstring mp3_path, jint sample_rate, jint channel,
                                              jint bit_rate) {
        int result=-1;
        const char *pcm_path_=env->GetStringUTFChars(pcm_path,0);
        const char *mp3_path_=env->GetStringUTFChars(mp3_path,0);
        mp3_encoder=new pcm2mp3();
        mp3_encoder->init(pcm_path_,mp3_path_,sample_rate,channel,bit_rate);
        mp3_encoder->pcm_to_mp3();
        env->ReleaseStringUTFChars(pcm_path,pcm_path_);
        env->ReleaseStringUTFChars(mp3_path,mp3_path_);
        return result;
    }
    

    然后java层通过jni调用即可实现mp3文件的编码

    //注:本例经过尝试,发现如果采样率不缩小,那么声音会变快,原因还未找到
    lameJni.pcmTomp3(pcmFile.getAbsolutePath(),mp3File.getAbsolutePath(),mSampleRate/2,mChannel==AudioFormat.CHANNEL_IN_MONO?1:2,128);
    

    以上,即可将pcm转换为mp3,关于pcm的获取,可以参考上一篇:https://blog.csdn.net/s591628545/article/details/104525958

    项目地址:https://github.com/kingdavidsun/AudioSampling.git

    展开全文
  • 对于每个原始文件,它将创建一个新目录,然后创建编号的文件序列,每个文件都带有原始文件的一部分。 它需要ffmpeg命令行实用程序来分割文件 目前,它被写入拆分文件,这些文件是从我们的库中的Overdrive服务下载的...
  • VC6.0播放MP3文件

    千次阅读 2013-05-29 15:31:47
    播放MP3音乐 MIDI音乐的问题是对声卡的依赖性过大,好声卡和差声卡的播放效果实在相差太远。WAV音乐虽然绝对足够精确,但占用的空间之大不可小视。MP3恐怕是一个较好的解决方案。...调入MP3文件
    播放MP3音乐   
     
      MIDI音乐的问题是对声卡的依赖性过大,好声卡和差声卡的播放效果实在相差太远。WAV音乐虽然绝对足够精确,但占用的空间之大不可小视。MP3恐怕是一个较好的解决方案。值得注意的是,播放MP3并不需要DirectX   Audio,需要的是DirectShow。所以,我们要#include   <dshow.h>,并在工程中加入strmiids.lib。   
    
    调入MP3文件   
     
      下面把初始化DirectShow和调入MP3合起来说说吧。首先,我们要定义三个对象,其中IGraphBuilder*类型的可以认为是媒体播放设备,IMediaControl*类型的变量负责媒体的播放控制,而IMediaPosition*类型的变量负责媒体的播放位置设定。   
    
    IGraphBuilder*   pGBuilder;   
     
      IMediaControl*   pMControl;   
     
      IMediaPosition*   pMPos;   
     
      CoInitialize(NULL);   //初始化COM   
     
      //创建各个对象   
     
      CoCreateInstance(CLSID_FilterGraph,   NULL,   
     
      CLSCTX_INPROC,   IID_IGraphBuilder,   (void**)&pGBuilder);   
     
      pGBuilder->QueryInterface(IID_IMediaControl,   (void**)&pMControl);   
     
      pGBuilder->QueryInterface(IID_IMediaPosition,   (void**)&pMPos);   
    
    CHAR   strSoundPath[MAX_PATH];   //存储音乐所在路径   
     
      WCHAR   wstrSoundPath[MAX_PATH];   //存储UNICODE形式的路径   
     
      GetCurrentDirectory(MAX_PATH,   strSoundPath);   
     
      strcat(strSoundPath,   "\\Sounds\\");   
     
      strcat(strSoundPath,   "a.mp3");   //假设要播放的是Sounds子目录下的a.mp3   
     
      MultiByteToWideChar(CP_ACP,   0,   strSoundPath,   -1,wstrSoundPath,   MAX_PATH);   
     
      pGBuilder->RenderFile(wstrSoundPath,   NULL);   //调入文件   
    
    播放MP3文件   
     
      播放MP3的方法十分简单:   
     
      pMPos->put_CurrentPosition(0);   //移动到文件头   
     
      pMControl->Run();   //播放   
    
    停止播放和释放对象   
     
      最后,我们要停止播放音乐并释放各个对象:   
     
      pMControl->Stop();   //停止播放   
     
      //释放对象   
     
      SAFE_RELEASE(pMControl);   
     
      SAFE_RELEASE(pMPos);   
     
      SAFE_RELEASE(pGBuilder);   
     
      CoUninitialize();   //释放COM   
    
    展开全文
  • Podcast Feed会为本地mp3文件生成RSS feed。 使用命名方案YYYY-MM-DD.mp3将mp3文件放置在shows/show_name YYYY-MM-DD.mp3 创建一个config/shows.yml 。 有关格式,请参见config/shows.example.yml 。 通过符号...
  • 文章目录1. 获取编码器和创建解码器上下文2....使用FFMpeg将原始的PCM数据生成WAV和MP3文件的步骤如下: 创建编码器AVCodec和编码码器上下文AVCodecContext 创建音频流AVStream和输出封装上下文...
  • 用HTTP协议下载一个MP3文件

    千次阅读 2017-04-05 10:41:17
    在visual studio上调试通过的,这个只是一个...3)读取一段数据,解析出Content-Length字段,找到MP3文件的长度 4)循环读取数据,直到读取到的数据量大于等于MP3文件的长度 #include "stdafx.h" #include #includ
  • 以下为我写的Mp3操作类源代码: usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.IO;usingSystem.Runtime.InteropServi...
  • 图形用户界面前端支持MP3Gain引擎,该引擎分析MP3文件并将其无损地调整为指定的目标音量。 原始MP3Gain GUI的完全重新创建(在QT4中进行),但是可以在更多平台上运行。
  • 案例217 播放本地MP3文件

    千次阅读 2014-03-01 10:22:39
    本案例演示了苹果开发中最常使用的播放本地MP3文件的功能,实现了MP3音乐文件的播放、停止功能和播放当前时间、歌曲长度时间的获取。本案例将演示使用MAC系统的基本音频处理类AVAudioPlayer实现简单的MP3音乐文件的...
  • 图形用户界面前端支持MP3Gain引擎,该引擎可分析MP3文件并将其无损地调整为指定的目标音量。 原始 MP3Gain GUI 的完整重新创建(在 QT4 中制作),但它可以在更多平台上运行。
  • 我编写了这个小程序,可以轻松地从Amarok系列中直接创建mp3播放器,以便直接在车上播放。 为此,该棒需要一种扁平的文件夹结构,并在复制之前按字母顺序进行排序。 小型Qt4对话框有一个放置区域,您可以在其中放置...
  • 根据移动设备自身的能力以及mp3文件的大小,可以在移动设备创建一个mp3播放器来播放mp3文件下边的方法描述了如何创建一个mp3播放器以及如何播放一个地址为url的mp3文件public void run(){ try { String url = ...
  • JLayer(Java Layer)是很久之前的一个 Java 开源项目,用于简单播放一个 mp3 文件。 JLayer 支持的音频文件: 相关网站: JLayer Home JLayer DocsApi 1. JLayer 下载 下载 JLayer 的开发包,下...
  • 如果具有以下标签的文件类型为Genre:Pop艺术家:Kay Perry专辑:The Of Boys标题:Hot N Cold并且目标目录为D:\ music,则文件将移至d:\ music \ pop \ Katy Perry-男孩之一凯蒂·佩里-Hot N Cold.mp3

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 59,763
精华内容 23,905
关键字:

如何创建mp3文件