网上下载的一些mp3歌曲,却不能导入Flash,怎么办?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网上下载的一些mp3歌曲,却不能导入Flash,怎么办?相关的知识,希望对你有一定的参考价值。
网上下载的一些mp3歌曲,导入Flash的方法:
1、将在网上下载的小苹果.mp3文件直接导入到Flash元件库,弹出无法导入文件的错误提示。
2、我们需要下载“格式工厂”软件,或者其他的视频音频转换软件,这里以格式工厂即format factory举例。
3、百度搜索格式工厂然后,下载安装到电脑。
4、双击打开格式工厂工具,将无法导入到Flash软件的MP3音乐文件,小苹果.mp3拖入到格式工厂软件中。
5、在弹出的设置对话框中选中需要将小苹果.mp3转换的格式,这里还是转换成mp3格式,设置好输出路径,这里设置存到桌面,点击配置按钮。
6、在弹出的配置界面,在音频品质下拉框中将音频品质调到中或下,确保音频比特率等于或低于128kb/秒。
7、设置完后点击确定按钮,回到输出路径设置窗口,再点击确定回到格式工厂软件主窗口,点击“开始按钮”。
8、将转换后的apple1.mp3文件导入到Flash,便可导入成功。
参考技术A wmv格式本来就不能导入flash,mp3本来可以,但有的却不行,遇到这种情况可以转成wav,也可以再转下mp3。使用 C# 开发 MP3 播放器
【中文标题】使用 C# 开发 MP3 播放器【英文标题】:Developing a MP3 Player using C# 【发布时间】:2014-04-03 10:19:01 【问题描述】:我目前正在。我是初学者。我已经能够开发出具有最小功能的普通 MP3 播放器,例如打开文件、暂停、播放和停止。但问题是它播放了一些歌曲而没有播放一些歌曲。我也导入了 winmm.dll 文件。但是有些文件可以播放,有些则不能。此外,任何人都可以建议我如何向其中添加一堆随机播放的歌曲?代码是:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
namespace MP3Player
class MusicPlayer
Boolean isPlay=false;
[DllImport("winmm.dll")]
private static extern long mciSendString(string lpstrCommand, StringBuilder lpstrReturnString, int uReturnLength, int hwndCallback);
public void open(String file)
string command = "open \"" + file + "\" type MPEGVideo alias MyMp3";
mciSendString(command, null, 0, 0);
isPlay = false;
public void play()
if (isPlay == false)
string command = "play MyMP3";
mciSendString(command, null, 0, 0);
isPlay = true;
public void pause()
if (isPlay == true)
string command = "pause MyMP3";
mciSendString(command, null, 0, 0);
isPlay = false;
public void stop()
string command = "stop MyMp3";
mciSendString(command, null, 0, 0);
isPlay = false;
command = "close MyMp3";
mciSendString(command, null, 0, 0);
【问题讨论】:
【参考方案1】:我不知道你的应用为什么不播放一些 mp3,我想我可以假设它是因为音频编码,但不要引用我的话。
至于你的“随机播放功能”
您可以尝试实现的是一个在目录中查找并获取该目录中所有 mp3 文件的数组,
然后它随机播放一首歌,
这里有一个示例代码:
fileinfo MySongs() = MySongDirectoryString.getFiles();
foreach (song in MySong)
string SongName = song.tostring();
//code to play that song
【讨论】:
要使其随机化,只需添加一个随机函数即可从类似于此 SongName.Value=MySongs[new Random().Next(0,MySongs.Length) ] 的数组中拉出一个随机项; 【参考方案2】:我建议使用 Windows Media Player SDK。这是example。
【讨论】:
【参考方案3】:供您随意演奏。 使用堆栈(更容易跟踪进度)
//Retrieve a list of files from a directory.
var di = new DirectoryInfo("Path to folder");
//Get the files and order them randomly.
var listOfFiles = di.GetFiles().OrderBy(s=> Guid.NewGuid);
//Convert the list to a stack.
var stack = new Stack<FileInfo>(listOfFiles);
现在您可以使用带有 Pop 方法的堆栈来获取列表中的下一首随机歌曲。
//Usage
var current = stack.Pop();
至于无法播放的问题,您可能希望对您的 mp3 文件使用 LAME 编码器/解码器,它比 windows dll 更强大。
【讨论】:
代替 LAME Naudio 的是托管 c# 库 => mark-dot-net.blogspot.be/2009/10/naudio-13-release-notes.html 和 naudio.codeplex.com以上是关于网上下载的一些mp3歌曲,却不能导入Flash,怎么办?的主要内容,如果未能解决你的问题,请参考以下文章
带有播放列表的 flash mp3 播放器正在播放已删除或更改的歌曲