Board logo

標題: [問題] 橘花1&2的音樂播放相關問題 [打印本頁]

作者: pig1218    時間: 2008-11-3 13:55     標題: 橘花1&2的音樂播放相關問題

之前看到有人的橘花發生只能聽MP3的問題
我之後也試了試

橘花2播放無聲音
橘花1將WMA檔當作壁紙檔

我家的舊電腦並無此問題
我新的電腦才有
而我也發現
當我播放MP3檔時
是由FFDShow播放
或許是mciaudior.dll關連到FFDShow
而照道理來說WMA檔應該也是
可是一播WMA就FFDShow消失了
我之後用media player classic播放WMA檔
有成功使用FFDShow播放
看來這不是我電腦的問題就是mciaudior.dll的問題

我家舊電腦的系統是XP SP2
新電腦意買回來就是XP SP3
同樣裝有K-Lite Codec Pack

雖然現在幾乎都是MP3檔
可是WMA檔也是大有人用
希望大家一起來研究一下這個問題...
作者: 天空の霊石    時間: 2008-11-3 16:39

橘花1的问题不太清楚,不过橘花2播放无声音很可能是因为你的音乐目录或文件名中含有中文所致,将其全部替换成英文试试.
作者: pig1218    時間: 2008-11-3 17:34

大致上就算有中文也沒關係
我的中文檔名MP3可是正常播出呢~
還加了可播放.lrc 歌詞檔的功能ˇ
而且正常播出~
作者: Yuffie    時間: 2008-11-5 13:12

试了下,家里只有无损,于是先拖了个WAV上去,于是橘花1问我“嗯,要设定成壁纸吗?”囧。。。。

然后转了一个MP3,拖上去倒是没问题……(文件路径为英+日)
作者: 貓魚    時間: 2008-11-5 17:47

我今天仔細的測試了下……
發現如果利用櫻語的\![sound]系列語法的話,
和是否是中文路徑沒有關係,有沒有轉碼都可以播放。
wma也可以正常播放。

但是如果第一首沒有停止的狀態下拖入第二首歌,會變成大混音XDDD
之前時原砂前輩用的是簡單的\![sound,stop]\![sound,play],先停止後再播放,
這樣可以避免混音。
但這在之前還能正常運行,現在卻會因此而不播放任何音樂了……
不知是不是SSP更新的關係=口="""(我發誓我沒有改動過代碼)



另一方面,如果是使用SAORI「mciaudior.dll」的話,
wma無法播放,而且循環模式下暫停、再播放的話,會變成非循環模式……
但不會混音。

--------------
茶兔的人格之前播放不暢,大概是因為\![sound,stop]\![sound,play]的關係,
先前一陣子因為會混音,於是試用了這樣的寫法,
但結果是如果要播放第二首歌,就必須拖2次進去。

而現在,則是拖N次都不會播放的了Orz|||

目前將就的將語法都換成了\![sound]系列,
混音這個問題就只好靠自覺了XDDDDD

另:文件名內帶有[、]的話都是沒有辦法播放的XDDD

[ 本帖最後由 貓魚 於 2008-11-5 17:50 編輯 ]
作者: 時原砂    時間: 2008-11-5 20:52

嗯...似乎真的是SSP改版的關係。
那麼提供一個簡單的方法:在播放過程中追加一個事件流程。

範例:
複製內容到剪貼板
代碼:
OnFileDrop2
{
    if '.mp3' _in_ reference0 {
        "\0\s[0]要播放此音樂嗎?\n\n/
        \q[播放且唱出,OnPlayNewMusic,%(reference0),play]\n/
        \q[僅播放,OnPlayNewMusic,%(reference0),play,nolyric]\n/
        \q[取消,CANCEL]";
    }
    else {
        "\0\s[0]要執行此檔案嗎?\n\n/
        \q[確定,開啟檔案,%(reference0)]\n/
        \q[取消,取消動作]";
    }
}

OnPlayNewMusic
{
    "\![sound,stop]\![raise,OnMusicPlayWithLyric,%(reference0),%(reference1),%(reference2)]";
}

OnMusicPlayWithLyric
{
    _mp3 = REPLACE(reference0, '\', '\\'); //'
    _lrc = REPLACE(reference0, '.mp3', '.lrc');
    _txt = '';
   
    case reference1 {
        when 'play' {
            _txt += "\1\s[10]\q[暫停,OnMusicPlayWithLyric,%(reference0),pause,%(reference2)]\n/
                    \1\s[10]\q[結束,OnMusicPlayWithLyric,%(reference0),stop]\n\n/
                    \0\s[25]\![sound,play,%(_mp3)]";
            if reference2 != 'nolyric' {
                _txt += GetLyric(_lrc);
                playTime = GETTICKCOUNT();
            }
        }
        when 'pause' {
            _txt += "\1\s[10]\q[再開,OnMusicPlayWithLyric,%(reference0),resume,%(reference2)]\n/
                    \1\s[10]\q[結束,OnMusicPlayWithLyric,%(reference0),stop]\n\n/
                    \0\s[25]\![sound,pause]";
            if reference2 != 'nolyric' {
                timeDiff = playTime - GETTICKCOUNT();
            }
        }
        when 'resume' {
            _txt += "\1\s[10]\q[暫停,OnMusicPlayWithLyric,%(reference0),pause,%(reference2)]\n/
                    \1\s[10]\q[結束,OnMusicPlayWithLyric,%(reference0),stop]\n\n/
                    \0\s[25]\![sound,resume]";
            if reference2 != 'nolyric' {
                _txt += GetLyric(_lrc,timeDiff);
                playTime = GETTICKCOUNT() + timeDiff;
            }
        }
        when 'stop' {
            _txt += '\![sound,stop]\0\s[0]結束了。';
        }
    }
   
    _txt;
}
[ 本帖最後由 時原砂 於 2008-11-5 20:55 編輯 ]
作者: pig1218    時間: 2008-11-5 22:53

報告!!!
我的茶兔&茶鹿更新後的狀態是~
可以正常播放啦!!!!
(茶兔&茶鹿帖同步留言)
不過好像因為我家ffdshow的關係~
會混音XD
請沒裝什麼莫名其妙編解碼程式的測試一下~
還有橘花也請修一下呦~
作者: 貓魚    時間: 2008-11-6 16:21

混音是同時播放2首的關係……!
(如果沒有同時播放2首歌卻還混音的話當我沒說|||)

如果沒有什麼簡單的辦法解決的話,
稍後我將其改為如果在播放中就不能再次播放這樣好了……




歡迎光臨 中文偽春菜後援會論壇 (http://cuc.moe.hm/) Powered by Discuz! 6.1.0