0

我正在尝试从 C# 中的 .mp3 文件中检索音频播放器的详细信息。

代码片段:

[DllImport("winmm.dll")]

private static extern long mciSendString(string strCommand, StringBuilder strReturn, int iReturnLength, IntPtr hwndCallback);

public static void Close()
{
    _command = "close MediaFile";
    mciSendString(_command, null, 0, IntPtr.Zero);
    isOpen = false;
}

public static void Open(string sFileName)
{
    _command = "open \"" + sFileName + "\" type mpegvideo alias MediaFile";
    mciSendString(_command, null, 0, IntPtr.Zero);
    isOpen = true;
}

public static void Play(bool loop)
{
    if (isOpen)
    {
        _command = "play MediaFile";
        if (loop)
            _command += " REPEAT";
        mciSendString(_command, null, 0, IntPtr.Zero);
    }
}

我的问题是:

  • 如何设置歌曲的音量?
  • 我如何获得歌曲的比特率/采样率?

我更喜欢使用 MCI 或 NAudio,因为我知道它们的可靠性。

4

1 回答 1

1

设置音量:

string command = "setaudio MediaFile volume to " + volume.ToString();
error = mciSendString(Pcommand, null, 0, IntPtr.Zero);

其中 volume 是 0 到 1000 之间的整数

在 msdn 上的多媒体参考中有一个完整的 mci 命令字符串列表:
set command

CodeProject 上还有一个很好的示例项目,它可以完成您尝试做的大部分工作: Simple MCI Player

高温高压

保罗

于 2014-03-28T11:09:41.080 回答