⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 opts.c

📁 Mplayer源码
💻 C
📖 第 1 页 / 共 5 页
字号:
    l = g_list_append(l, (gpointer)"/dev/sound/dsp1");    l = g_list_append(l, (gpointer)"/dev/sound/dsp2");    l = g_list_append(l, (gpointer)"/dev/sound/dsp3");  } else {    l = g_list_append(l, (gpointer)"/dev/dsp0");    l = g_list_append(l, (gpointer)"/dev/dsp1");    l = g_list_append(l, (gpointer)"/dev/dsp2");    l = g_list_append(l, (gpointer)"/dev/dsp3");  }#ifdef HAVE_DXR3  l = g_list_append(l, (gpointer)"/dev/em8300_ma");  l = g_list_append(l, (gpointer)"/dev/em8300_ma-0");  l = g_list_append(l, (gpointer)"/dev/em8300_ma-1");  l = g_list_append(l, (gpointer)"/dev/em8300_ma-2");  l = g_list_append(l, (gpointer)"/dev/em8300_ma-3");#endif  return l;}GList *appendOSSMixers(GList *l) {  // careful! the current implementation allows only string constants!  l = g_list_append(l, (gpointer)"/dev/mixer");  if (gtkAOOSSMixer && strncmp(gtkAOOSSMixer, "/dev/sound", 10) == 0) {    l = g_list_append(l, (gpointer)"/dev/sound/mixer0");    l = g_list_append(l, (gpointer)"/dev/sound/mixer1");    l = g_list_append(l, (gpointer)"/dev/sound/mixer2");    l = g_list_append(l, (gpointer)"/dev/sound/mixer3");  } else {    l = g_list_append(l, (gpointer)"/dev/mixer0");    l = g_list_append(l, (gpointer)"/dev/mixer1");    l = g_list_append(l, (gpointer)"/dev/mixer2");    l = g_list_append(l, (gpointer)"/dev/mixer3");  }  return l;}GList *appendOSSMixerChannels(GList *l) {  l = g_list_append(l, (gpointer)"vol");  l = g_list_append(l, (gpointer)"pcm");  l = g_list_append(l, (gpointer)"line");  return l;}#endif#if defined(HAVE_ALSA9) || defined (HAVE_ALSA1X)GList *appendALSADevices(GList *l) {  l = g_list_append(l, (gpointer)"default");  l = g_list_append(l, (gpointer)"hw=0.0");  l = g_list_append(l, (gpointer)"hw=0.1");  l = g_list_append(l, (gpointer)"hw=0.2");  l = g_list_append(l, (gpointer)"surround40");  l = g_list_append(l, (gpointer)"surround51");  l = g_list_append(l, (gpointer)"plug=surround40");  l = g_list_append(l, (gpointer)"plug=surround51");  return l;}GList *appendALSAMixers(GList *l) {  l = g_list_append(l, (gpointer)"default");  return l;}GList *appendALSAMixerChannels(GList *l) {  l = g_list_append(l, (gpointer)"Master");  l = g_list_append(l, (gpointer)"Line");  l = g_list_append(l, (gpointer)"PCM");  l = g_list_append(l, (gpointer)"PCM,1");  return l;}#endif#ifdef HAVE_SDLGList *appendSDLDevices(GList *l) {  l = g_list_append(l, (gpointer)"alsa");  l = g_list_append(l, (gpointer)"arts");  l = g_list_append(l, (gpointer)"esd");  l = g_list_append(l, (gpointer)"jack");  l = g_list_append(l, (gpointer)"oss");  l = g_list_append(l, (gpointer)"nas");  return l;}#endif#ifdef USE_ESDGList *appendESDDevices(GList *l) {  l = g_list_append(l, (gpointer)"Enter Remote IP");  l = g_list_append(l, (gpointer)"Use Software Mixer");  return l;}#endif// Gets text string from a gtk entry, interpreting // MSGTR_PREFERENCES_DriverDefault as null string.char *getGtkEntryText(GtkWidget *from) {  char *tmp = gtk_entry_get_text(GTK_ENTRY(from));  if (strcmp(tmp, MSGTR_PREFERENCES_DriverDefault) == 0) {    tmp = NULL;  }  return tmp;}// Sets text string of a gtk entry, interpreting // null string as MSGTR_PREFERENCES_DriverDefault.void setGtkEntryText(GtkWidget *dest, char *to) {  if (!to) {    to = MSGTR_PREFERENCES_DriverDefault;  }  gtk_entry_set_text(GTK_ENTRY(dest),to);}       GtkWidget *AudioConfig;static GtkWidget *CEAudioDevice;static GtkWidget *CBAudioDevice;static GtkWidget *CEAudioMixer;static GtkWidget *CBAudioMixer;static GtkWidget *CEAudioMixerChannel;static GtkWidget *CBAudioMixerChannel;static GtkWidget *BAudioOk;static GtkWidget *BAudioCancel;void ShowAudioConfig() {  if (AudioConfig) gtkActive(AudioConfig);  else AudioConfig = create_AudioConfig();#ifdef USE_OSS_AUDIO  if (strncmp(ao_driver[0], "oss", 3) == 0) {    setGtkEntryText(CEAudioDevice, gtkAOOSSDevice);    setGtkEntryText(CEAudioMixer, gtkAOOSSMixer);    setGtkEntryText(CEAudioMixerChannel, gtkAOOSSMixerChannel);  }#endif#if defined(HAVE_ALSA9) || defined (HAVE_ALSA1X)  if (strncmp(ao_driver[0], "alsa", 4) == 0) {    setGtkEntryText(CEAudioDevice, gtkAOALSADevice);    setGtkEntryText(CEAudioMixer, gtkAOALSAMixer);    setGtkEntryText(CEAudioMixerChannel, gtkAOALSAMixerChannel);  }#endif#ifdef HAVE_SDL  if (strncmp(ao_driver[0], "sdl", 3) == 0) {    setGtkEntryText(CEAudioDevice, gtkAOSDLDriver);  }#endif#ifdef USE_ESD  if (strncmp(ao_driver[0], "esd", 3) == 0) {    setGtkEntryText(CEAudioDevice, gtkAOESDDevice);  }#endif  gtk_widget_show(AudioConfig);  gtkSetLayer(AudioConfig);}void HideAudioConfig() {  if (!AudioConfig) return;  gtk_widget_hide(AudioConfig);  gtk_widget_destroy(AudioConfig);   AudioConfig=NULL;}static void audioButton(GtkButton *button, gpointer user_data) {  switch( (int)user_data ) {    case 1:#ifdef USE_OSS_AUDIO      if (strncmp(ao_driver[0], "oss", 3) == 0) {        gfree(&gtkAOOSSDevice);        gtkAOOSSDevice = gstrdup(getGtkEntryText(CEAudioDevice));        gfree(&gtkAOOSSMixer);        gtkAOOSSMixer = gstrdup(getGtkEntryText(CEAudioMixer));        gfree(&gtkAOOSSMixerChannel);        gtkAOOSSMixerChannel = gstrdup(getGtkEntryText(CEAudioMixerChannel));      }#endif#if defined(HAVE_ALSA9) || defined (HAVE_ALSA1X)      if (strncmp(ao_driver[0], "alsa", 4) == 0) {        gfree(&gtkAOALSADevice);        gtkAOALSADevice = gstrdup(getGtkEntryText(CEAudioDevice));        gfree(&gtkAOALSAMixer);        gtkAOALSAMixer = gstrdup(getGtkEntryText(CEAudioMixer));        gfree(&gtkAOALSAMixerChannel);        gtkAOALSAMixerChannel = gstrdup(getGtkEntryText(CEAudioMixerChannel));      }#endif#ifdef HAVE_SDL      if (strncmp(ao_driver[0], "sdl", 3) == 0) {        gfree(&gtkAOSDLDriver);        gtkAOSDLDriver = gstrdup(getGtkEntryText(CEAudioDevice));      }#endif#ifdef USE_ESD      if (strncmp(ao_driver[0], "esd", 3) == 0) {        gfree(&gtkAOESDDevice);        gtkAOESDDevice = gstrdup(getGtkEntryText(CEAudioDevice));      }#endif   case 0:      HideAudioConfig();      break;  }}GtkWidget *create_AudioConfig() {  GList *items = NULL;  GtkWidget *vbox;  GtkWidget *table;  GtkWidget *label;  GtkWidget *hbuttonbox;  GtkAccelGroup *accel_group;  AudioConfig = gtk_window_new(GTK_WINDOW_TOPLEVEL);  gtk_widget_set_name(AudioConfig, "AudioConfig");  gtk_object_set_data(GTK_OBJECT(AudioConfig), "AudioConfig", AudioConfig);  gtk_window_set_title(GTK_WINDOW(AudioConfig), MSGTR_AudioPreferences);  gtk_window_set_position(GTK_WINDOW(AudioConfig), GTK_WIN_POS_CENTER);  gtk_window_set_policy(GTK_WINDOW(AudioConfig), FALSE, FALSE, FALSE);  gtk_window_set_wmclass(GTK_WINDOW(AudioConfig), "Audio Config", "MPlayer");  gtk_widget_realize(AudioConfig);  gtkAddIcon(AudioConfig);  vbox = AddVBox(AddDialogFrame(AudioConfig), 0);  table = gtk_table_new(2, 3, FALSE);  gtk_widget_set_name(table, "table");  gtk_widget_show(table);  gtk_box_pack_start(GTK_BOX(vbox), table, TRUE, TRUE, 0);  label = AddLabel(MSGTR_PREFERENCES_Audio_Device, NULL);  gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0, 1, (GtkAttachOptions)(GTK_FILL), (GtkAttachOptions)(0), 0, 0);  CBAudioDevice = AddComboBox(NULL);  gtk_table_attach(GTK_TABLE(table), CBAudioDevice, 1, 2, 0, 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), (GtkAttachOptions)(0), 0, 0);  items = g_list_append(items,(gpointer)MSGTR_PREFERENCES_DriverDefault);#ifdef USE_OSS_AUDIO  if (strncmp(ao_driver[0], "oss", 3) == 0)    items = appendOSSDevices(items);#endif#if defined(HAVE_ALSA9) || defined (HAVE_ALSA1X)  if (strncmp(ao_driver[0], "alsa", 4) == 0)    items = appendALSADevices(items);#endif#ifdef HAVE_SDL  if (strncmp(ao_driver[0], "sdl", 3) == 0)    items = appendSDLDevices(items);#endif#ifdef USE_ESD  if (strncmp(ao_driver[0], "esd", 3) == 0)    items = appendESDDevices(items);#endif  gtk_combo_set_popdown_strings(GTK_COMBO(CBAudioDevice), items);  g_list_free(items);  items = NULL;  CEAudioDevice = GTK_COMBO(CBAudioDevice)->entry;  gtk_widget_set_name(CEAudioDevice, "CEAudioDevice");  gtk_widget_show(CEAudioDevice);  label = AddLabel(MSGTR_PREFERENCES_Audio_Mixer, NULL);  gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1, 2, (GtkAttachOptions)(GTK_FILL), (GtkAttachOptions)(0), 0, 0);  CBAudioMixer = AddComboBox(NULL);  gtk_table_attach(GTK_TABLE(table), CBAudioMixer, 1, 2, 1, 2, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), (GtkAttachOptions)(0), 0, 0);  items = g_list_append(items, (gpointer)MSGTR_PREFERENCES_DriverDefault);#ifdef USE_OSS_AUDIO  if (strncmp(ao_driver[0], "oss", 3) == 0)    items = appendOSSMixers(items);#endif#if defined(HAVE_ALSA9) || defined (HAVE_ALSA1X)  if (strncmp(ao_driver[0], "alsa", 4) == 0)    items = appendALSAMixers(items);#endif  gtk_combo_set_popdown_strings(GTK_COMBO(CBAudioMixer), items);  g_list_free(items);  items = NULL;  CEAudioMixer = GTK_COMBO(CBAudioMixer)->entry;  gtk_widget_set_name(CEAudioMixer, "CEAudioMixer");  gtk_widget_show(CEAudioMixer);  label = AddLabel(MSGTR_PREFERENCES_Audio_MixerChannel, NULL);  gtk_table_attach(GTK_TABLE(table), label, 0, 1, 2, 3, (GtkAttachOptions)(GTK_FILL), (GtkAttachOptions)(0), 0, 0);  CBAudioMixerChannel = AddComboBox(NULL);  gtk_table_attach(GTK_TABLE(table), CBAudioMixerChannel, 1, 2, 2, 3, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), (GtkAttachOptions)(0), 0, 0);  items = g_list_append(items, (gpointer)MSGTR_PREFERENCES_DriverDefault);#ifdef USE_OSS_AUDIO  if (strncmp(ao_driver[0], "oss", 3) == 0)    items = appendOSSMixerChannels(items);#endif#if defined(HAVE_ALSA9) || defined (HAVE_ALSA1X)  if (strncmp(ao_driver[0], "alsa", 4) == 0)    items = appendALSAMixerChannels(items);#endif  gtk_combo_set_popdown_strings(GTK_COMBO(CBAudioMixerChannel), items);  g_list_free(items);  items = NULL;  CEAudioMixerChannel = GTK_COMBO(CBAudioMixerChannel)->entry;  gtk_widget_set_name(CEAudioMixerChannel, "CEAudioMixerChannel");  gtk_widget_show(CEAudioMixerChannel);  AddHSeparator(vbox);  hbuttonbox = AddHButtonBox(vbox);  gtk_button_box_set_layout(GTK_BUTTON_BOX(hbuttonbox), GTK_BUTTONBOX_END);  gtk_button_box_set_spacing(GTK_BUTTON_BOX(hbuttonbox), 10);  BAudioOk = AddButton(MSGTR_Ok, hbuttonbox);  BAudioCancel = AddButton(MSGTR_Cancel, hbuttonbox);  gtk_signal_connect(GTK_OBJECT(AudioConfig), "destroy", GTK_SIGNAL_FUNC(WidgetDestroy), &AudioConfig);  gtk_signal_connect(GTK_OBJECT(BAudioOk), "clicked", GTK_SIGNAL_FUNC(audioButton), (void*)1);  gtk_signal_connect(GTK_OBJECT(BAudioCancel), "clicked", GTK_SIGNAL_FUNC(audioButton), (void*)0);  accel_group = gtk_accel_group_new();  gtk_widget_add_accelerator(BAudioOk, "clicked", accel_group, GDK_Return, 0, GTK_ACCEL_VISIBLE);  gtk_widget_add_accelerator(BAudioCancel, "clicked", accel_group, GDK_Escape, 0, GTK_ACCEL_VISIBLE);  gtk_window_add_accel_group(GTK_WINDOW(AudioConfig), accel_group);  return AudioConfig;}#ifdef HAVE_DXR3// --- dxr3 config boxstatic GtkWidget * DXR3Config;static GtkWid

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -