簡體   English   中英

如何從Windows 10通用應用程序中的CD導入.CDA曲目?

[英]How to import .CDA tracks from a CD in windows 10 universal app?

我需要從CD導入曲目,但到目前為止我無法這樣做。 我可以成功地從CD導入.mp3或許多其他音頻格式。 出於導入目的,我首先掃描CD的文件和文件夾。 然后我向用戶顯示文件列表並復制用戶從列表中選擇的文件。

這是我掃描目錄或CD的代碼:

    List<StorageFile> allTrackFiles = null;
    private async Task GetFiles(StorageFolder folder)
    {
        if(!scanningRemovableTask)
        {
            return;
        }
        try
        {

        if(allTrackFiles == null)
        {
            allTrackFiles = new List<StorageFile>();
        }
        var items = await folder.GetItemsAsync();

        foreach (var item in items)
        {
                if (item.GetType() == typeof(StorageFile))
                {
                    StorageFile storageFile = item as StorageFile;
                    allTrackFiles.Add(storageFile);

                    var basicProperties  = await storageFile.GetBasicPropertiesAsync();
                    var musicProperties = await storageFile.OpenReadAsync();
                }
                else
                    await GetFiles(item as StorageFolder);
        }

        }
        catch(Exception e)
        {

        }
    }    

我將CD路徑傳遞給此函數,它為我創建了一個文件列表。 當CD只有.mp3或任何着名的音頻格式時,此代碼可以正常工作。 但是當CD具有.CDA擴展軌道時,它會造成麻煩。 我們知道.CDA文件本身不能播放,它們只是原始媒體文件的快捷方式。

現在,這就是我現在被困住的地方。 如何閱讀.CDA文件或將.CDA文件媒體導入我們在通用Windows應用程序中的本地目錄。

簡短回答:CDA文件無法做到這一點。

答案很長:CDA文件只是Windows為CD上的每個音軌生成的存根文件。 這些文件不包含實際的音頻數據。 它們包含的是光盤上每個軌道開始和停止的位置。 如果文件從CD“復制”到計算機,則不能單獨使用它,因為它只是部分光盤的快捷方式。 音頻CD未格式化為文件系統磁盤。 它無法作為文件訪問。 這就是Windows創建CDA文件的原因。 它將CD顯示為帶有軌道文件的驅動器,以便於查看。

您將不得不使用可以從磁盤加載實際音軌的庫,而不是文件而是音軌。 使用CDA的正確方法是將其用作實際音頻軌道的參考,將其翻錄到文件,然后加載翻錄文件。

您可以使用本機Windows Media Interface來翻錄音軌。 我還發現了一個似乎使用自定義開膛手的代碼項目教程 他們應該讓你朝着正確的方向前進。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM