On Wed, 19 Oct 2016, Victor Toso wrote: [...] > > In a different context I have found that I can fnid dfbvideosink and > > even instantiate it. But it will refuse to switch to the READY state and > > is thus unusable. That makes sense since I was not using it in a Direct > > FB context. > > Interesting. Was it possible to set a dfb context later on? Otherwise it > could be a bug, no? I don't think that's a bug. The GStreamer documentation says: * GST_STATE_NULL: this is the default state. No resources are allocated in this state, so, transitioning to it will free all resources. [...] * GST_STATE_READY: in the ready state, an element has allocated all of its global resources, that is, resources that can be kept within streams. You can think about opening devices, allocating buffers and so on. However, the stream is not opened in this state, so the stream positions is automatically zero. If a stream was previously opened, it should be closed in this state, and position, properties and such should be reset. When the dfbvideosink is instantiated is is in the NULL state and since no resource is allocated in this state it does not matter whether the device is available or not. It's only when transitioning to the READY state that it would try to open the relevant device and so that's where it returns an error. > > I expect hardware decoders will be even worse. For instance vaapidecode > > is likely to be present but may not work if you don't have an Intel > > card. Even if you can instantiate it, it may cause a VP8 pipeline caps > > negotiation to fail if your graphics does not support VP8. > > Yes, that's why I think we need a different approach for hardware > decoders. We will need code that can try the hardware decoder first and fallback to the software one if it's not usable. But I don't think this necessarily impacts gstvideo_has_codec() if implemented using create_gstreamer_decoder() whereas with your code it will necessarily be impacted. -- Francois Gouget <fgouget@xxxxxxxxxxxxxxx> _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel