Précédent   Forum des professionnels en informatique > Applications > Développement 2D, 3D et Jeux > API graphiques > DirectX
DirectX Forum d'entraide sur le développement avec DirectX. Avant de poster -> FAQ DirectX
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2011, 11h55   #1
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 3
Points : 3
Par défaut Player Directshow et playlist

Bonjour,

Je suis en cours de développement d'un player vidéo basé sur Directshow et je souhaiterai savoir si il est possible de passer d'un fichier à un autre sans à avoir à régénérer le graph (tous les fichiers sont identiques (codec, durée,...)).

L'initialisation :

Code :
1
2
3
4
5
6
7
8
9
 
 
hr = ::CoCreateInstance(CLSID_AsyncReader, NULL, CLSCTX_INPROC_SERVER,IID_IBaseFilter, (LPVOID *)&m_pSourceF);
 
		hr = m_pGraphBuilder->AddFilter(m_pSourceF, L"Source");
 
		hr = m_pSourceF->QueryInterface(IID_IFileSourceFilter,(LPVOID *)&m_pSourceFilter);
 
		m_pSourceFilter->Load(wFile,NULL);
Puis le changement de fichier :

Code :
1
2
3
4
5
 
 
HRESULT hr = m_pMediaControl->Stop();
 
hr = m_pSourceFilter->Load(wFile,NULL);
J'obtiens en code erreur E_Unexpected

Y a t-il des précausions a prendre? ou il n'est pas possible de switcher de fichier en direct?

Merci.
zoylamb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2011, 21h02   #2
Membre Expert
 
Homme david
Responsable développement
Inscription : décembre 2003
Messages : 1 122
Détails du profil
Informations personnelles :
Nom : Homme david
Âge : 38
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Responsable développement
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2003
Messages : 1 122
Points : 1 501
Points : 1 501
Bonjour.

Il est possible de réutiliser des composants du graphe, mais cela dépends de la manière dont sont développés les filtres.

1 - Pour plus de sécurité dans le fonctionnement du graphe, mieux vaut recréé un graphe à zéro.

2 - Si les filtres gèrent bien la reconnexion, déconnecter les filtres et tenter une reconnexion avec le nouveau fichier.

Personnellement, avec les filtres dont je n'ai pas les codes sources, j'utilise la méthode 1.
moldavi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h01.


 
 
 
 
Partenaires

Hébergement Web