2017-06-27 4 views
0

J'ai une collection de fichiers de RGBA, et ont vérifié la présence d'une couche alpha sur chaque fichier:Comment enregistrer une vidéo avec une couche alpha dans GStreamer?

gst-launch-1.0 multifilesrc location="pics/%d.png" ! decodebin ! videorate ! videoconvert ! video/x-raw,format=BGRA,framerate=60/1 ! videomixer background=checker ! videoconvert ! ximagesink

Je veux prendre ces fichiers et les rendre dans un fichier vidéo (en tout format que GStreamer manipulera facilement avec un simple decodebin). Quel serait un bon ensemble d'encodeurs, de conteneurs et d'éléments à utiliser pour cela?

J'ai essayé avimux mais aucune donnée alpha n'a été enregistrée. J'ai également essayé avenc_huffyuv, et cela décoderait bien comme données brutes en utilisant avenc_huffyuv, mais decodebin ne pouvait pas le détecter.

Répondre

0

Rien comme une bonne nuit de sommeil pour résoudre un problème ..

Apparemment, l'encodeur huffyuv et le travail avi muxer bien ensemble pour préserver tranpsarency:

gst-launch-1.0 multifilesrc location="pics/%d.png" ! decodebin ! videorate ! videoconvert ! video/x-raw,format=BGRA,framerate=60/1 ! avenc_huffyuv ! avimux ! filesink location=/tmp/test.avi