Commit cd077daf authored by Rocky Bernstein's avatar Rocky Bernstein

Fix some bugs when playlist not in disc but track mode:

  play_item initialization accidently lost.
  Probably need a vlc_object release of the playlist.

Adjust comments which were wrong because of cut and paste artifacts.

Some changes that may help debugging. 

First attempt at playing via audio controls - mostly not working. 
parent 17aa2b4e
This diff is collapsed.
...@@ -137,6 +137,13 @@ vlc_module_begin(); ...@@ -137,6 +137,13 @@ vlc_module_begin();
N_("Format to use in playlist \"title\" field when no CDDB"), N_("Format to use in playlist \"title\" field when no CDDB"),
TITLE_FMT_LONGTEXT, VLC_TRUE ); TITLE_FMT_LONGTEXT, VLC_TRUE );
#if LIBCDIO_VERSION_NUM >= 73
add_bool( MODULE_STRING "-analog-output", VLC_FALSE, NULL,
N_("Use CD audio controls and output?"),
N_("If set, audio controls and audio jack output are used"),
VLC_FALSE );
#endif
add_bool( MODULE_STRING "-cdtext-enabled", VLC_TRUE, CDTextEnabledCB, add_bool( MODULE_STRING "-cdtext-enabled", VLC_TRUE, CDTextEnabledCB,
N_("Do CD-Text lookups?"), N_("Do CD-Text lookups?"),
N_("If set, get CD-Text information"), N_("If set, get CD-Text information"),
......
...@@ -24,6 +24,11 @@ ...@@ -24,6 +24,11 @@
#include <vlc/input.h> #include <vlc/input.h>
#include <cdio/cdio.h> #include <cdio/cdio.h>
#include <cdio/cdtext.h> #include <cdio/cdtext.h>
#if LIBCDIO_VERSION_NUM >= 73
#include <cdio/audio.h>
#include <cdio/mmc.h>
#endif
#include "vlc_meta.h" #include "vlc_meta.h"
#include "codecs.h" #include "codecs.h"
...@@ -31,6 +36,7 @@ ...@@ -31,6 +36,7 @@
#include <cddb/cddb.h> #include <cddb/cddb.h>
#endif #endif
#define CDDA_MRL_PREFIX "cddax://" #define CDDA_MRL_PREFIX "cddax://"
/* Frequency of sample in bits per second. */ /* Frequency of sample in bits per second. */
...@@ -115,6 +121,9 @@ typedef struct cdda_data_s ...@@ -115,6 +121,9 @@ typedef struct cdda_data_s
} cddb; } cddb;
#endif #endif
vlc_bool_t b_audio_ctl; /* Use CD-Text audio controls and
audio output? */
vlc_bool_t b_cdtext; /* Use CD-Text at all? If not, vlc_bool_t b_cdtext; /* Use CD-Text at all? If not,
cdtext_preferred is meaningless. */ cdtext_preferred is meaningless. */
vlc_bool_t b_cdtext_prefer; /* Prefer CD-Text info over vlc_bool_t b_cdtext_prefer; /* Prefer CD-Text info over
...@@ -128,7 +137,12 @@ typedef struct cdda_data_s ...@@ -128,7 +137,12 @@ typedef struct cdda_data_s
WAVEHEADER waveheader; /* Wave header for the output data */ WAVEHEADER waveheader; /* Wave header for the output data */
vlc_bool_t b_header; vlc_bool_t b_header;
vlc_bool_t b_nav_mode; vlc_bool_t b_nav_mode; /* If false we view the entire CD as
as a unit rather than each track
as a unit. If b_nav_mode then the
slider area represents the Disc rather
than a track
*/
input_thread_t *p_input; input_thread_t *p_input;
......
/***************************************************************************** /*****************************************************************************
* info.c : CD digital audio input information routines * info.c : CD digital audio input information routines
***************************************************************************** *****************************************************************************
* Copyright (C) 2004 VideoLAN * Copyright (C) 2004, 2005 VideoLAN
* $Id: info.c 8845 2004-09-29 09:00:41Z rocky $ * $Id: info.c 8845 2004-09-29 09:00:41Z rocky $
* *
* Authors: Rocky Bernstein <rocky@panix.com> * Authors: Rocky Bernstein <rocky@panix.com>
...@@ -941,6 +941,9 @@ CDDAFixupPlaylist( access_t *p_access, cdda_data_t *p_cdda, ...@@ -941,6 +941,9 @@ CDDAFixupPlaylist( access_t *p_access, cdda_data_t *p_cdda,
if (p_playlist) { if (p_playlist) {
p_item = playlist_LockItemGetByInput( p_playlist,
((input_thread_t *)p_access->p_parent)->input.p_item );
if( p_item == p_playlist->status.p_item && !b_single_track ) if( p_item == p_playlist->status.p_item && !b_single_track )
{ {
b_play = VLC_TRUE; b_play = VLC_TRUE;
...@@ -984,7 +987,6 @@ CDDAFixupPlaylist( access_t *p_access, cdda_data_t *p_cdda, ...@@ -984,7 +987,6 @@ CDDAFixupPlaylist( access_t *p_access, cdda_data_t *p_cdda,
{ {
input_title_t *t; input_title_t *t;
if ( !p_cdda->b_nav_mode ) if ( !p_cdda->b_nav_mode )
playlist_ItemToNode( p_playlist, p_item ); playlist_ItemToNode( p_playlist, p_item );
...@@ -1028,9 +1030,9 @@ CDDAFixupPlaylist( access_t *p_access, cdda_data_t *p_cdda, ...@@ -1028,9 +1030,9 @@ CDDAFixupPlaylist( access_t *p_access, cdda_data_t *p_cdda,
playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, playlist_Control( p_playlist, PLAYLIST_VIEWPLAY,
p_playlist->status.i_view, p_playlist->status.i_view,
p_playlist->status.p_item, NULL ); p_playlist->status.p_item, NULL );
vlc_object_release( p_playlist );
} }
if (p_playlist) vlc_object_release( p_playlist );
return VLC_SUCCESS; return VLC_SUCCESS;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment