forked from enlightenment/efl
emotion: set volume when files are opened.
SVN revision: 36531
This commit is contained in:
parent
0ebceb16a1
commit
ea7104a545
|
@ -453,6 +453,8 @@ em_file_open(const char *file,
|
||||||
_free_metadata(ev->metadata);
|
_free_metadata(ev->metadata);
|
||||||
ev->metadata = calloc(1, sizeof(Emotion_Gstreamer_Metadata));
|
ev->metadata = calloc(1, sizeof(Emotion_Gstreamer_Metadata));
|
||||||
|
|
||||||
|
em_audio_channel_volume_set(ev, ev->volume);
|
||||||
|
|
||||||
_eos_timer_fct(ev);
|
_eos_timer_fct(ev);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
|
|
|
@ -215,6 +215,7 @@ _em_slave(void *par)
|
||||||
ev->ratio = (double)v / 10000.0;
|
ev->ratio = (double)v / 10000.0;
|
||||||
ev->just_loaded = 1;
|
ev->just_loaded = 1;
|
||||||
ev->get_poslen = 0;
|
ev->get_poslen = 0;
|
||||||
|
xine_set_param(ev->stream, XINE_PARAM_AUDIO_VOLUME, ev->volume * 100);
|
||||||
}
|
}
|
||||||
_em_module_event(ev, 2); /* event - open done */
|
_em_module_event(ev, 2); /* event - open done */
|
||||||
}
|
}
|
||||||
|
@ -312,12 +313,7 @@ _em_slave(void *par)
|
||||||
break;
|
break;
|
||||||
case 10: /* vol */
|
case 10: /* vol */
|
||||||
{
|
{
|
||||||
double vol;
|
xine_set_param(ev->stream, XINE_PARAM_AUDIO_VOLUME, ev->volume * 100);
|
||||||
|
|
||||||
vol = *((double *)eev->xine_event);
|
|
||||||
if (vol < 0.0) vol = 0.0;
|
|
||||||
if (vol > 1.0) vol = 1.0;
|
|
||||||
xine_set_param(ev->stream, XINE_PARAM_AUDIO_VOLUME, vol * 100);
|
|
||||||
_em_module_event(ev, 10);
|
_em_module_event(ev, 10);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -979,12 +975,13 @@ static void
|
||||||
em_audio_channel_volume_set(void *ef, double vol)
|
em_audio_channel_volume_set(void *ef, double vol)
|
||||||
{
|
{
|
||||||
Emotion_Xine_Video *ev;
|
Emotion_Xine_Video *ev;
|
||||||
double *ppos;
|
|
||||||
|
|
||||||
|
if (vol < 0.0) vol = 0.0;
|
||||||
|
else if (vol > 1.0) vol = 1.0;
|
||||||
|
|
||||||
ev = (Emotion_Xine_Video *)ef;
|
ev = (Emotion_Xine_Video *)ef;
|
||||||
ppos = malloc(sizeof(double));
|
ev->volume = vol;
|
||||||
*ppos = vol;
|
_em_slave_event(ev, 10, NULL);
|
||||||
_em_slave_event(ev, 10, ppos);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static double
|
static double
|
||||||
|
@ -993,8 +990,9 @@ em_audio_channel_volume_get(void *ef)
|
||||||
Emotion_Xine_Video *ev;
|
Emotion_Xine_Video *ev;
|
||||||
|
|
||||||
ev = (Emotion_Xine_Video *)ef;
|
ev = (Emotion_Xine_Video *)ef;
|
||||||
if (ev->opening || (!ev->play_ok)) return 0;
|
if (ev->opening || (!ev->play_ok)) return ev->volume;
|
||||||
return (double)xine_get_param(ev->stream, XINE_PARAM_AUDIO_VOLUME) / 100.0;
|
ev->volume = xine_get_param(ev->stream, XINE_PARAM_AUDIO_VOLUME) / 100.0;
|
||||||
|
return ev->volume;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
|
|
@ -20,6 +20,7 @@ struct _Emotion_Xine_Video
|
||||||
xine_event_queue_t *queue;
|
xine_event_queue_t *queue;
|
||||||
volatile double len;
|
volatile double len;
|
||||||
volatile double pos;
|
volatile double pos;
|
||||||
|
volatile double volume;
|
||||||
double fps;
|
double fps;
|
||||||
double ratio;
|
double ratio;
|
||||||
int w, h;
|
int w, h;
|
||||||
|
|
Loading…
Reference in New Issue