2014-01-05 2 views
0

Windows Phone 8 미디어 플레이어에서 프로그래밍 방식으로 재생하는 음악에서 mp3 태그를 얻는 방법이 있는지 묻고 싶습니다.음악 재생에서 태그 가져 오기

저는 BackgroundAudioPlayer 인스턴스, XNA 프레임 워크의 MediaPlayer를 사용하여 wp8 뮤직 플레이어에서 재생되는 노래에서 태그를 추출하려고했지만 시도 할 수없는 것 같습니다. 나는이 같은 끝났다 :

var player = BackgroundAudioPlayer.Instance; 
if (player.PlayerState != PlayState.Playing) return; 
var track = player.Track; 
ArtistTextBlock.Text = track.Artist; 
SongTextBlock.Text = track.Title; 

을하지만 아티스트 나 노래 이름 문자열 TextBlocks을 assing하려는 경우 NullReferenceException가 발생합니다.

+1

이런 식으로 뭔가를 찾을 수 있습니까? http://stackoverflow.com/questions/1750464/how-to-read-and-write-id3-tags-to-an-mp3-in-c –

+0

고마워,하지만 아니, 이건 내가 찾는거야. 현재 재생중인 노래에서 아티스트와 노래의 이름 만 추출하려고합니다. 나는 약간의 연구를했고 트랙 객체에서 그것을 추출 할 수 있어야합니다. –

답변

0

할당시 NullReferenceException이 발생하는 경우 디버깅을 단계별로 수행하여 트랙 변수가 유효한지 아니면 실제로 null인지 확인해야합니다. 하나는 플레이어를 상상할 수 있습니다. 플레이어는 플레이어이어야합니다. 지금은 재생 중이거나 비슷하지만 WP8 프레임 워크를 잘 모릅니다.

NullRef가 가끔씩 만 발생하는 경우 플레이어를 추적 할 때 트랙이 없으므로 NULL이 반환되어이 문제가 발생할 가능성이 있습니다. 플레이어에 트랙이로드되어 있는지 확인하고 PlayStateChanged에 대해 플레이어 자체와 연결된 이벤트가 있는지 확인하십시오.이 이벤트를 캡처하면 "재생 중"파일이로드되어있는 것을 알 수 있습니다. 트랙이로드되었음을 증명할 수 있습니다.

내가 생각했던 대안은 .NET을 사용하는 FileInfo 라이브러리입니다. 일부 태그를 포함하여 파일에 대한 많은 정보를 제공 할 수 있습니다. 이를 사용하여 정보를 얻을 수도 있습니다.

관련 문제