Exemplo n.º 1
0
        GEMediaPlayer(MediaElement owner, Uri uri)
        {
            _stream = Noesis.GUI.LoadXamlResource(uri.OriginalString);
            if (_stream != null)
            {
                _state = CreateState();

                _streamHandle = GCHandle.Alloc(_stream);
                StreamReadDelegate readFn = new StreamReadDelegate(StreamRead);
                _readFnHandle = GCHandle.Alloc(readFn);
                StreamSeekDelegate seekFn = new StreamSeekDelegate(StreamSeek);
                _seekFnHandle = GCHandle.Alloc(seekFn);

                MediaOpenedDelegate mediaOpenedFn = new MediaOpenedDelegate(this.OnMediaOpened);
                _mediaOpenedFnHandle = GCHandle.Alloc(mediaOpenedFn);
                MediaEndedDelegate mediaEndedFn = new MediaEndedDelegate(this.OnMediaEnded);
                _mediaEndedFnHandle = GCHandle.Alloc(mediaEndedFn);
                MediaFailedDelegate mediaFailedFn = new MediaFailedDelegate(this.OnMediaFailed);
                _mediaFailedFnHandle = GCHandle.Alloc(mediaFailedFn);

                long streamSize = _stream.Length;
                OpenMedia(_state, GCHandle.ToIntPtr(_streamHandle), uri.GetPath(), streamSize, readFn, seekFn, mediaOpenedFn, mediaEndedFn, mediaFailedFn);
            }
            owner.View.Rendering += OnRendering;
        }
Exemplo n.º 2
0
		static internal extern Status GdipRecordMetafileFromDelegateI_linux (StreamGetHeaderDelegate getHeader, 
			StreamGetBytesDelegate getBytes, StreamPutBytesDelegate putBytes, StreamSeekDelegate doSeek, 
			StreamCloseDelegate close, StreamSizeDelegate size, IntPtr hdc, EmfType type, ref Rectangle frameRect, 
			MetafileFrameUnit frameUnit, [MarshalAs (UnmanagedType.LPWStr)] string description, out IntPtr metafile);
Exemplo n.º 3
0
		static internal extern Status GdipGetMetafileHeaderFromDelegate_linux (StreamGetHeaderDelegate getHeader, 
			StreamGetBytesDelegate getBytes, StreamPutBytesDelegate putBytes, StreamSeekDelegate doSeek, 
			StreamCloseDelegate close, StreamSizeDelegate size, IntPtr header);
Exemplo n.º 4
0
		static internal extern Status GdipCreateMetafileFromDelegate_linux (StreamGetHeaderDelegate getHeader, 
			StreamGetBytesDelegate getBytes, StreamPutBytesDelegate putBytes, StreamSeekDelegate doSeek, 
			StreamCloseDelegate close, StreamSizeDelegate size, out IntPtr metafile);
Exemplo n.º 5
0
		static internal extern Status GdipSaveImageToDelegate_linux (IntPtr image, StreamGetBytesDelegate getBytes, 
			StreamPutBytesDelegate putBytes, StreamSeekDelegate doSeek, StreamCloseDelegate close, 
			StreamSizeDelegate size, ref Guid encoderClsID, IntPtr encoderParameters);		
Exemplo n.º 6
0
		static internal extern Status GdipLoadImageFromDelegate_linux (StreamGetHeaderDelegate getHeader, 
			StreamGetBytesDelegate getBytes, StreamPutBytesDelegate putBytes, StreamSeekDelegate doSeek, 
			StreamCloseDelegate close, StreamSizeDelegate size, out IntPtr image);
Exemplo n.º 7
0
 private static extern void OpenMedia(IntPtr state, IntPtr streamPtr, string streamName, long streamSize,
                                      StreamReadDelegate readFn, StreamSeekDelegate seekFn, MediaOpenedDelegate mediaOpenedFn, MediaEndedDelegate mediaEndedFn, MediaFailedDelegate mediaFailedFn);