C#에서 WMV 파일의 이미지 크기를 읽으려고합니다.
여기에 설명 된 것을 사용하여 시도했습니다 :
How do I get the duration of a video file using C#?
값이있는 속성은 Duration뿐입니다.
아이디어가 있으십니까?
감사합니다.C#에서 WMV 해상도 읽기
답변
나는 그것이 다 본 적이 유일한 방법은 재생 및 오픈 이벤트에 부착입니다 .
연결된 예제의 코드를 사용하지만 명시 적으로 함수 호출을 수행하여 height 및 width을 얻습니다.
예 :
static WindowsMediaPlayerClass player;
static void Main()
{
player = new WindowsMediaPlayerClass();
IWMPMedia mediaInfo = player.newMedia("test.wmv");
player.OpenStateChange += new _WMPOCXEvents_OpenStateChangeEventHandler(player_OpenStateChange);
player.currentMedia = mediaInfo;
//...
Console.WriteLine("Done.");
Console.ReadKey();
}
private static void player_OpenStateChange(int state)
{
if (state == (int)WMPOpenState.wmposMediaOpen)
{
Console.WriteLine("height = " + player.currentMedia.imageSourceHeight);
Console.WriteLine("width = " + player.currentMedia.imageSourceWidth);
}
}
당신이 종료하기 전에 모든 자원을 처분 할 수 있습니다 :
using WMPLib; // this file is called Interop.WMPLib.dll
WindowsMediaPlayerClass wmp = new WindowsMediaPlayerClass();
IWMPMedia mediaInfo = wmp.newMedia("myfile.wmv");
long height, width;
mediaInfo.get_imageSourceHeight(height);
mediaInfo.get_imageSourceWidth(width);
컴파일되지 않음 : 'WMPLib.IWMPMedia.imageSourceHeight.get': 명시 적으로 연산자 또는 접근자를 호출 할 수 없습니다. –
및 mediaInfo.imageSourceHeight는 0을 반환합니다. –
그는 맞습니다. 파일이 ** 재생 **되지 않는 한 imageSourceHeight 및 imageSourceWidth는 0을 반환합니다. – egrunin
저는 무료 NReco.VideoInfo.dll을 사용하는 것을 선호합니다. 주로 Windows Media Player가 싫어서. 나는 WMP가 신뢰할 수 없다는 것을 발견했다.
여기 다운로드 링크가 있습니다 : http://www.nrecosite.com/video_info_net.aspx 다른 것들에도 유용합니다.
var ffProbe = new NReco.VideoInfo.FFProbe();
var videoInfo = ffProbe.GetMediaInfo(pathToFile);
Int32 tmpHeight = videoInfo.Streams[0].Height;
Int32 tmpWidth = videoInfo.Streams[0].Width;
- 1. C에서 Excel 데이터 읽기
- 2. C에서 PDF 읽기 #
- 3. C에서 # .vcproj 파일 읽기
- 4. C에서 파일 읽기 (/ 쓰기)
- 5. C에서 이벤트 로그 읽기
- 6. C에서 Excel 파일 읽기
- 7. C에서 파일 읽기, 무작위 오류
- 8. C에서 Outlook Express에서 메일 읽기
- 9. C에서 원자 읽기 - 수정 - 쓰기
- 10. C에서 배열로 텍스트 파일 읽기
- 11. C에서 파일에서 기본 문자 읽기
- 12. C에서 확장 이미지 속성 읽기
- 13. C에서 액세스 데이터베이스에서 데이터 읽기
- 14. C에서 StackOverflowException을 일으키는 파일 읽기
- 15. 해상도
- 16. C#에서 WMV 파일의 해상도를 변경하는 방법
- 17. 창없는 .wmv in firefox
- 18. WMV 로의 비디오 변환
- 19. WMV 파일 용 HttpHandler
- 20. wmv 파일의 의사 스트리밍
- 21. 비밀 번호 읽기 읽기 C에서 OLEDB를 사용하여 파일을 엑셀
- 22. C에서 링크 된 목록으로 입력 읽기
- 23. C에서 문자열에서 데이터 읽기 (scanf와 유사)
- 24. C에서 FILE 스트림을 사용하여 소켓에 읽기/쓰기
- 25. C에서 읽기 전용으로 단일 char을 지정 하시겠습니까?
- 26. 리눅스 클립 보드 C에서 읽기/쓰기
- 27. C에서 여러 스레드에서 동일한 파일 읽기 #
- 28. C에서 Excel 범위의 모든 셀 값 읽기
- 29. C에서 표준 I/O에서 논 블로킹 읽기
- 30. C에서 읽기 전용 메모리는 어떻게 구현됩니까?
파일을 재생하려고합니까, 아니면 헤더 정보 만 가져 오시겠습니까? – egrunin
나는 그것을 재생할 필요가 없습니다, 그냥 정보를 얻을. –