Manipuler une vidéo

Manipuler une vidéo - C++ - Programmation

Marsh Posté le 10-05-2003 à 20:55:08    

Salut,
 
je voudrais savoir si vous saviez comment je peux manipuler de la vidéo, à savoir copier des morceaux d'une vidéo et les assembler...
 
Je voudrais que tout cela se fasse quel que soit le type de la vidéo (si c'est possible bien sûr), et sans passer par une phase de décompression/compression (comme le mode Direct Stream Copy de VirtualDub)...
 
Quelqu'un peut m'aider là dessus, sur les fonctions à utiliser?
Ou bien des liens à proposer?
 
Merci d'avance

Reply

Marsh Posté le 10-05-2003 à 20:55:08   

Reply

Marsh Posté le 11-05-2003 à 09:02:32    

Je n'y connais rien, mais il me semble que la phase de décompression/recompression est inévitable, non? A moins de ne rien modifier. Enfin, corrigez-moi si je me trompe.


Message édité par Ace17 le 11-05-2003 à 09:03:15
Reply

Marsh Posté le 11-05-2003 à 09:21:23    

Ace17 a écrit :

Je n'y connais rien, mais il me semble que la phase de décompression/recompression est inévitable, non? A moins de ne rien modifier. Enfin, corrigez-moi si je me trompe.


 
Bah, non, c'est ce que l'on appelle le stream-copy. On prends le flux compressé dans le fichier source et on le met directement dans le fichier destination sans y toucher. Comme il n'y a pas de changement à faire dans la vidéo (ou le son) pas besoin de décompresser/recompresser.


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 11-05-2003 à 12:13:20    

kadreg a écrit :


 
Bah, non, c'est ce que l'on appelle le stream-copy. On prends le flux compressé dans le fichier source et on le met directement dans le fichier destination sans y toucher. Comme il n'y a pas de changement à faire dans la vidéo (ou le son) pas besoin de décompresser/recompresser.


 
et tu as idée de comment je peux faire ça?

Reply

Marsh Posté le 11-05-2003 à 12:17:50    

haazheel a écrit :


 
et tu as idée de comment je peux faire ça?


 
DirectShow te permet de manipuler les flux video dans tous les sens.
 
 
 


---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran
Reply

Marsh Posté le 11-05-2003 à 12:20:40    

Moi j'ai découvert ces choses-là en regardant le code de avs2avi, un petit soft développé par un mec qui traie sur le forum de doom9 (http://forum.doom9.org).
Apres il y a plusieurs aspects : il faut deja extraire la video de son conteneur (avi, ogm, msk...), manipuler le flux, et réécrire un conteneur.
chaque conteneur est manipulable via la lib adequate, il suffit de se taper la doc.
Si tu es plus chaud, un petit (gros en fait) coup d'oeil dans le code de virtualdubmod devrait t'apprendre un tas de choses.

Reply

Marsh Posté le 11-05-2003 à 14:02:53    

Tetragrammaton IHVH a écrit :


 
DirectShow te permet de manipuler les flux video dans tous les sens.
 


Directshow décompressera obligatoirement les flux, non ? A moins de refaire tous les filtres pour le graphe, je ne vois pas trop comment tu peux éviter ca ...


---------------
last.fm
Reply

Marsh Posté le 11-05-2003 à 15:36:37    

theShOcKwAvE a écrit :


Directshow décompressera obligatoirement les flux, non ?


 
Pas forcemment... En tous cas, quand tu utilises DES (DirectShow Editing Services), il y a apparemment un mode Smart Render qui ne recompresse pas les fichiers si ce n'est pas indispensable :

MSDN a écrit a écrit :

With smart recompression, source files are recompressed only when the original file format differs from the final output format. If the formats match, the source is never decompressed. Smart recompression is supported only for video compression, not for audio compression.



---------------
each day I don't die is cheating
Reply

Marsh Posté le 11-05-2003 à 15:47:31    

gatorette a écrit :


 
Pas forcemment... En tous cas, quand tu utilises DES (DirectShow Editing Services), il y a apparemment un mode Smart Render qui ne recompresse pas les fichiers si ce n'est pas indispensable :
 


 
classe ! :D


---------------
last.fm
Reply

Marsh Posté le 11-05-2003 à 21:36:31    

R3g a écrit :

Moi j'ai découvert ces choses-là en regardant le code de avs2avi, un petit soft développé par un mec qui traie sur le forum de doom9 (http://forum.doom9.org


 
J'ai pas trouvé le code source de ce soft...
 

gatorette a écrit :

Pas forcemment... En tous cas, quand tu utilises DES (DirectShow Editing Services), il y a apparemment un mode Smart Render qui ne recompresse pas les fichiers si ce n'est pas indispensable :  


 
Pour utiliser Direct Show, il faut que je télécharge le sdk non?

Reply

Marsh Posté le 11-05-2003 à 21:36:31   

Reply

Marsh Posté le 12-05-2003 à 07:31:49    

Oui, je pense qu'il faut effectivement d/l le directX sdk sur le site de micro$oft ...

Reply

Marsh Posté le 12-05-2003 à 09:56:50    

Tu devrais trouver ton bonheur à l'adresse suivante pour le DXSDK
 
http://msdn.microsoft.com/library/ [...] irectx.asp
 
Le Runtime DirextX9 est fourni avec le SDK (les versions Debug et Retail)


---------------
last.fm
Reply

Marsh Posté le 12-05-2003 à 16:21:47    

J'ai juste besoin de ça:
 

DirectX 9.0 SDK for C/C++
This download is a subset of the full DirectX 9.0 SDK download focused specifically for C/C++ developers. This download contains samples, header, libs, documentation, utilities and any additional content required for the specific programming language.


 
Ca suffira?

Reply

Marsh Posté le 12-05-2003 à 22:06:32    

pfff, 100 Mo, font chier...
 
mais bon pour l'instant je sais pas encore si j'en ai besoin, je me suis lancé dans l'étude des sources de AVS2AVI et VirtualDub, et j'y ai vu plein de fonctions sympa...
 
A moins qu'utiliser DShow soit plus rapide que ce qu'utilise VirtualDub?
 
Mais comme je risque de fatalement avoir beaucoup de questions, vous connaitriez pas un site ou un forum traitant plus spécifiquement de ce sujet?
 
Merci...


Message édité par haazheel le 12-05-2003 à 22:09:45
Reply

Marsh Posté le 13-05-2003 à 10:26:41    

Euh, petite question:
 
DirectShow permet de manipuler aussi des MPEG?
 
Parce que avec AVILib, je ne peux traiter que des ... AVI
 
Merci!!

Reply

Marsh Posté le 13-05-2003 à 11:24:05    

haazheel a écrit :

Euh, petite question:
 
DirectShow permet de manipuler aussi des MPEG?
 
Parce que avec AVILib, je ne peux traiter que des ... AVI
 
Merci!!


 
Oui, si je ne me trompe pas, il passe par les codecs installés sur ta machine, auquel cas ca marche aussi pour les Div-X .... La fête, non ?


---------------
last.fm
Reply

Marsh Posté le 13-05-2003 à 11:25:10    

haazheel a écrit :

J'ai juste besoin de ça:
 

DirectX 9.0 SDK for C/C++
This download is a subset of the full DirectX 9.0 SDK download focused specifically for C/C++ developers. This download contains samples, header, libs, documentation, utilities and any additional content required for the specific programming language.


 
Ca suffira?


 
oui, ca devrait suffire ! ;)


---------------
last.fm
Reply

Marsh Posté le 13-05-2003 à 11:40:35    

halala, qu'est-ce que je ferai sans toi!! :jap:

Reply

Marsh Posté le 13-05-2003 à 11:46:42    

haazheel a écrit :

halala, qu'est-ce que je ferai sans toi!! :jap:  


 
:D Arrête, j'vais chopper la grosse tête ! :D


---------------
last.fm
Reply

Marsh Posté le 14-05-2003 à 08:59:52    

haazheel a écrit :

Mais comme je risque de fatalement avoir beaucoup de questions, vous connaitriez pas un site ou un forum traitant plus spécifiquement de ce sujet?


 
Up!!


---------------
Another .Net Blog
Reply

Marsh Posté le 14-05-2003 à 11:32:30    


 
http://www.msdn.com/ :lol:
 
Edit : Normalement, tu devrais t'en tirer avec la doc et les exemples du SDK ... 'faut pas croire, mais on s'y retrouve, en fait ! :D


Message édité par theshockwave le 14-05-2003 à 11:33:29

---------------
last.fm
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed