зеркало из https://github.com/mozilla/gecko-dev.git
Bug 777696: Fix gstreamer backend on big endian architectures. r=doublec
This commit is contained in:
Родитель
31fe3efb2e
Коммит
a195799c2e
|
@ -132,10 +132,18 @@ nsresult nsGStreamerReader::Init(nsBuiltinDecoderReader* aCloneDonor)
|
||||||
mAudioSink = gst_parse_bin_from_description("capsfilter name=filter ! "
|
mAudioSink = gst_parse_bin_from_description("capsfilter name=filter ! "
|
||||||
#ifdef MOZ_SAMPLE_TYPE_FLOAT32
|
#ifdef MOZ_SAMPLE_TYPE_FLOAT32
|
||||||
"appsink name=audiosink sync=true caps=audio/x-raw-float,"
|
"appsink name=audiosink sync=true caps=audio/x-raw-float,"
|
||||||
|
#ifdef IS_LITTLE_ENDIAN
|
||||||
"channels={1,2},rate=44100,width=32,endianness=1234", TRUE, NULL);
|
"channels={1,2},rate=44100,width=32,endianness=1234", TRUE, NULL);
|
||||||
|
#else
|
||||||
|
"channels={1,2},rate=44100,width=32,endianness=4321", TRUE, NULL);
|
||||||
|
#endif
|
||||||
#else
|
#else
|
||||||
"appsink name=audiosink sync=true caps=audio/x-raw-int,"
|
"appsink name=audiosink sync=true caps=audio/x-raw-int,"
|
||||||
|
#ifdef IS_LITTLE_ENDIAN
|
||||||
"channels={1,2},rate=48000,width=16,endianness=1234", TRUE, NULL);
|
"channels={1,2},rate=48000,width=16,endianness=1234", TRUE, NULL);
|
||||||
|
#else
|
||||||
|
"channels={1,2},rate=48000,width=16,endianness=4321", TRUE, NULL);
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
mAudioAppSink = GST_APP_SINK(gst_bin_get_by_name(GST_BIN(mAudioSink),
|
mAudioAppSink = GST_APP_SINK(gst_bin_get_by_name(GST_BIN(mAudioSink),
|
||||||
"audiosink"));
|
"audiosink"));
|
||||||
|
|
Загрузка…
Ссылка в новой задаче