mirror of
https://github.com/tuxbox-neutrino/libstb-hal.git
synced 2025-08-26 23:13:16 +02:00
fix gst flags
This commit is contained in:
@@ -49,15 +49,18 @@ static const char * FILENAME = "[playback.cpp]";
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GST_PLAY_FLAG_VIDEO = 0x00000001,
|
||||
GST_PLAY_FLAG_AUDIO = 0x00000002,
|
||||
GST_PLAY_FLAG_TEXT = 0x00000004,
|
||||
GST_PLAY_FLAG_VIS = 0x00000008,
|
||||
GST_PLAY_FLAG_SOFT_VOLUME = 0x00000010,
|
||||
GST_PLAY_FLAG_NATIVE_AUDIO = 0x00000020,
|
||||
GST_PLAY_FLAG_NATIVE_VIDEO = 0x00000040,
|
||||
GST_PLAY_FLAG_DOWNLOAD = 0x00000080,
|
||||
GST_PLAY_FLAG_BUFFERING = 0x000000100
|
||||
GST_PLAY_FLAG_VIDEO = (1 << 0),
|
||||
GST_PLAY_FLAG_AUDIO = (1 << 1),
|
||||
GST_PLAY_FLAG_TEXT = (1 << 2),
|
||||
GST_PLAY_FLAG_VIS = (1 << 3),
|
||||
GST_PLAY_FLAG_SOFT_VOLUME = (1 << 4),
|
||||
GST_PLAY_FLAG_NATIVE_AUDIO = (1 << 5),
|
||||
GST_PLAY_FLAG_NATIVE_VIDEO = (1 << 6),
|
||||
GST_PLAY_FLAG_DOWNLOAD = (1 << 7),
|
||||
GST_PLAY_FLAG_BUFFERING = (1 << 8),
|
||||
GST_PLAY_FLAG_DEINTERLACE = (1 << 9),
|
||||
GST_PLAY_FLAG_SOFT_COLORBALANCE = (1 << 10),
|
||||
GST_PLAY_FLAG_FORCE_FILTERS = (1 << 11),
|
||||
} GstPlayFlags;
|
||||
|
||||
|
||||
@@ -389,6 +392,9 @@ bool cPlayback::Start(char *filename, int /*vpid*/, int /*vtype*/, int /*apid*/,
|
||||
|
||||
lt_info("%s:%s - filename=%s\n", FILENAME, __FUNCTION__, filename);
|
||||
|
||||
guint flags = GST_PLAY_FLAG_AUDIO | GST_PLAY_FLAG_VIDEO | \
|
||||
GST_PLAY_FLAG_TEXT | GST_PLAY_FLAG_NATIVE_VIDEO;
|
||||
|
||||
// create gst pipeline
|
||||
m_gst_playbin = gst_element_factory_make ("playbin", "playbin");
|
||||
|
||||
@@ -396,13 +402,6 @@ bool cPlayback::Start(char *filename, int /*vpid*/, int /*vtype*/, int /*apid*/,
|
||||
{
|
||||
lt_info("%s:%s - m_gst_playbin\n", FILENAME, __FUNCTION__);
|
||||
|
||||
guint flags;
|
||||
g_object_get(G_OBJECT (m_gst_playbin), "flags", &flags, NULL);
|
||||
/* avoid video conversion, let the (hardware) sinks handle that */
|
||||
flags |= GST_PLAY_FLAG_NATIVE_VIDEO;
|
||||
/* volume control is done by hardware */
|
||||
flags &= ~GST_PLAY_FLAG_SOFT_VOLUME;
|
||||
|
||||
g_object_set(G_OBJECT (m_gst_playbin), "uri", uri, NULL);
|
||||
g_object_set(G_OBJECT (m_gst_playbin), "flags", flags, NULL);
|
||||
|
||||
|
Reference in New Issue
Block a user