annotate loader/dshow/DS_Filter.h @ 15533:ddf15d233d58

Do not switch to audio tracks whose codec private data differs from the main audio track's as this will most likely result in messed up audio output. Patch by Michael Behrisch <list () behrisch ! de>
author mosu
date Sat, 21 May 2005 06:50:08 +0000
parents e3bbf44dbab2
children 49f01f8fbd60
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
1 #ifndef DS_FILTER_H
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
2 #define DS_FILTER_H
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
3
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
4 #include "inputpin.h"
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
5 #include "outputpin.h"
713
9355b2ae634e avifile-0.6-CVS merge
arpi_esp
parents: 342
diff changeset
6
3056
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
7 #if defined(__cplusplus)
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
8 extern "C" {
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
9 #endif
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
10
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
11 /**
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
12 User will allocate and fill format structures, call Create(),
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
13 and then set up m_pAll.
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
14 **/
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
15
3056
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
16 typedef struct _DS_Filter DS_Filter;
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
17 struct _DS_Filter
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
18 {
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
19 int m_iHandle;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
20 IBaseFilter* m_pFilter;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
21 IPin* m_pInputPin;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
22 IPin* m_pOutputPin;
3056
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
23
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
24 CBaseFilter* m_pSrcFilter;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
25 CBaseFilter2* m_pParentFilter;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
26 IPin* m_pOurInput;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
27 COutputPin* m_pOurOutput;
3056
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
28
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
29 AM_MEDIA_TYPE *m_pOurType, *m_pDestType;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
30 IMemAllocator* m_pAll;
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
31 IMemInputPin* m_pImp;
713
9355b2ae634e avifile-0.6-CVS merge
arpi_esp
parents: 342
diff changeset
32
3056
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
33 void ( *Start )(DS_Filter*);
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
34 void ( *Stop )(DS_Filter*);
713
9355b2ae634e avifile-0.6-CVS merge
arpi_esp
parents: 342
diff changeset
35 };
168
bdc4a8fc04d8 Initial revision
arpi_esp
parents:
diff changeset
36
3056
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
37 DS_Filter* DS_FilterCreate(const char* dllname, const GUID* id,
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
38 AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt);
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
39 void DS_Filter_Destroy(DS_Filter* This);
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
40
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
41 #if defined(__cplusplus)
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
42 }
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
43 #endif
213b35f84cf3 C++ -> C (import from avifile cvs)
arpi
parents: 1545
diff changeset
44
1545
da26060c81ef big avifile sync - from now we have common code
arpi
parents: 713
diff changeset
45 #endif /* DS_FILTER_H */