2011-08-26 6 views
3

나는 내 MP4 파일에서 메타 데이터를 검색하기 위해 TagLib #을 사용하고 있습니다. "LagLib # puke"를 만든 "잘못된"확장명을 가진 파일을 발견하기 전까지는 모든 것이 잘 작동합니다.이 파일이 jpg 확장자로 저장되었으며 TagLib 예외가 발생했음을 발견했습니다 예상 SOI 마커가 파일의 시작. 나는이 독서 JPEG 파일과 관련이 있다는 것을 발견some googling 후.잘못된 확장자를 가진 파일에서 TagLib #을 만드는 방법은 무엇입니까?

을 내가 올바른 signature for mp4에 해당이 00 00 00 20 66 74 79 70를 반환하는 파일의 매직 넘버, 보면.

I을 다음 질문이 있습니다.

  1. 파일의 이름을 바꾸지 않고 어떻게 메타 데이터를 읽을 수 있습니까?
  2. TagLib #은 메타 데이터를 어떻게 결정합니까?

아이디어가 있으십니까?

ps. 내가 사용하는 코드는 다음과 같았다 :

string file = @"D:\vs2008\Inetpub\wwwroot\Test\data\AA028578_7_2.jpg"; 
TagLib.File tag = TagLib.File.Create(file); 
Console.WriteLine(tag.MimeType); 

답변

3

당신은 (강제) MIME 형식을 지정할 수 있습니다 : 나는 그것이 TagLibSharp에로드되는 방법을 모르는

string file = @"D:\vs2008\Inetpub\wwwroot\Test\data\AA028578_7_2.jpg"; 
TagLib.File tag = TagLib.File.Create(file, "video/mp4", TagLib.ReadStyle.Average); 
Console.WriteLine(tag.MimeType); 

.

+0

글쎄, 난 항상 내 매직 넘버 스니퍼를 사용하여 근무하지만,이 같은 뭔가를 태그 라이브러리를하고 싶습니다. –

+0

'TagLib.Mpeg4.File.Create (file);'도 사용할 수 있습니다. –

0
TagLib.File.Create(file, "audio/mp3", ReadStyle.None)