[xiph-commits] r8103 - in trunk/oggdsf: sln/oggdsf_all
src/lib/codecs/flac/filters/dsfNativeFLACSource
illiminable at motherfish-iii.xiph.org
illiminable at motherfish-iii.xiph.org
Tue Oct 26 00:36:28 PDT 2004
Author: illiminable
Date: 2004-10-26 00:36:28 -0700 (Tue, 26 Oct 2004)
New Revision: 8103
Modified:
trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln
trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/NativeFLACSourcePin.cpp
trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/NativeFLACSourcePin.h
trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/dsfNativeFLACSource.h
trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/dsfNativeFLACSource.vcproj
Log:
* Add the seeking interface to the output pin of the flac native source.
Modified: trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln
===================================================================
--- trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln 2004-10-25 22:44:57 UTC (rev 8102)
+++ trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln 2004-10-26 07:36:28 UTC (rev 8103)
@@ -1212,6 +1212,7 @@
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dsfNativeFLACSource", "..\..\src\lib\codecs\flac\filters\dsfNativeFLACSource\dsfNativeFLACSource.vcproj", "{43DEE58F-CEC6-49B4-BC06-3D28978BAB63}"
ProjectSection(ProjectDependencies) = postProject
{6B548F29-04A2-4F61-946F-72B86B4845DA} = {6B548F29-04A2-4F61-946F-72B86B4845DA}
+ {A882A968-3013-4A27-B653-E18CF5C791FE} = {A882A968-3013-4A27-B653-E18CF5C791FE}
{4CBC0173-27E6-4218-AE06-5EFDCA7B2547} = {4CBC0173-27E6-4218-AE06-5EFDCA7B2547}
{A0004AEB-B47C-4A0A-8FE7-4F65B5FD48FA} = {A0004AEB-B47C-4A0A-8FE7-4F65B5FD48FA}
{2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4} = {2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}
Modified: trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/NativeFLACSourcePin.cpp
===================================================================
--- trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/NativeFLACSourcePin.cpp 2004-10-25 22:44:57 UTC (rev 8102)
+++ trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/NativeFLACSourcePin.cpp 2004-10-26 07:36:28 UTC (rev 8103)
@@ -39,6 +39,13 @@
{
debugLog.open("G:\\logs\\flacsourcepin_.log", ios_base::out);
+
+
+ //Subvert COM and do this directly... this way, the source filter won't expose the interface to the
+ // graph but we can still delegate to it.
+ IMediaSeeking* locSeeker = NULL;
+ locSeeker = (IMediaSeeking*)mParentFilter;
+ SetDelegate(locSeeker);
}
NativeFLACSourcePin::~NativeFLACSourcePin(void)
@@ -48,7 +55,11 @@
STDMETHODIMP NativeFLACSourcePin::NonDelegatingQueryInterface(REFIID riid, void **ppv)
{
-
+ if (riid == IID_IMediaSeeking) {
+ *ppv = (IMediaSeeking*)this;
+ ((IUnknown*)*ppv)->AddRef();
+ return NOERROR;
+ }
return CBaseOutputPin::NonDelegatingQueryInterface(riid, ppv);
}
Modified: trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/NativeFLACSourcePin.h
===================================================================
--- trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/NativeFLACSourcePin.h 2004-10-25 22:44:57 UTC (rev 8102)
+++ trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/NativeFLACSourcePin.h 2004-10-26 07:36:28 UTC (rev 8103)
@@ -32,12 +32,14 @@
#pragma once
#include "dsfNativeFLACSource.h"
//#include "NativeFLACSourceFilter.h"
+#include "BasicSeekable.h"
#include <fstream>
using namespace std;
class NativeFLACSourceFilter;
class NativeFLACSourcePin
: public CBaseOutputPin
+ , public BasicSeekable
{
public:
Modified: trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/dsfNativeFLACSource.h
===================================================================
--- trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/dsfNativeFLACSource.h 2004-10-25 22:44:57 UTC (rev 8102)
+++ trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/dsfNativeFLACSource.h 2004-10-26 07:36:28 UTC (rev 8103)
@@ -69,7 +69,7 @@
const REGFILTER2 NativeFLACSourceFilterReg = {
1,
- MERIT_DO_NOT_USE,
+ MERIT_NORMAL,
0,
FLACSourcePinReg
Modified: trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/dsfNativeFLACSource.vcproj
===================================================================
--- trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/dsfNativeFLACSource.vcproj 2004-10-25 22:44:57 UTC (rev 8102)
+++ trunk/oggdsf/src/lib/codecs/flac/filters/dsfNativeFLACSource/dsfNativeFLACSource.vcproj 2004-10-26 07:36:28 UTC (rev 8103)
@@ -19,7 +19,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories=""C:\DXSDK\Samples\C++\DirectShow\BaseClasses";..\..\libs\libflac\include;..\..\..\..\helper\libilliCore"
+ AdditionalIncludeDirectories=""C:\DXSDK\Samples\C++\DirectShow\BaseClasses";..\..\libs\libflac\include;..\..\..\..\helper\libilliCore;..\..\..\..\core\directshow\dsfSeeking"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;DSFNATIVEFLACSOURCE_EXPORTS"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
@@ -72,7 +72,7 @@
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""C:\DXSDK\Samples\C++\DirectShow\BaseClasses";..\..\libs\libflac\include;..\..\..\..\helper\libilliCore"
+ AdditionalIncludeDirectories=""C:\DXSDK\Samples\C++\DirectShow\BaseClasses";..\..\libs\libflac\include;..\..\..\..\helper\libilliCore;..\..\..\..\core\directshow\dsfSeeking"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSFNATIVEFLACSOURCE_EXPORTS"
RuntimeLibrary="2"
UsePrecompiledHeader="3"
More information about the commits
mailing list