View Javadoc

1   package org.rpi.mplayer;
2   
3   import org.apache.log4j.Logger;
4   
5   public class PositionThread extends Thread {
6   
7   	private MPlayer mPlayer = null;
8   	private Logger log = Logger.getLogger(PositionThread.class);
9   	private boolean bNewTrack = true;
10  		
11  	public PositionThread(MPlayer mPlayer) {
12  		this.setName("PT-" + mPlayer.getUniqueId());
13  		setNewTrack(true);
14  		this.mPlayer= mPlayer;
15  	}
16  	
17  
18  	@Override
19      public void run() {
20          try {
21              while (!isInterrupted()) {
22  				if (!mPlayer.isbPaused()) {
23  					try
24  					{
25  					mPlayer.getCommandWriter().sendCommand("get_time_pos");
26  					if (!mPlayer.getTrackInfo().isSet()) {
27  						mPlayer.getCommandWriter().sendCommand("get_time_length");
28  						mPlayer.getCommandWriter().sendCommand("get_audio_bitrate");
29  						mPlayer.getCommandWriter().sendCommand("get_audio_codec");
30  						mPlayer.getCommandWriter().sendCommand("get_audio_samples");
31  					}
32  					}
33  					catch(Exception e)
34  					{
35  						log.error("Error Writing Command: ", e);
36  					}
37  				}
38  				Thread.sleep(1000);
39  			}
40  		} catch (InterruptedException e) {
41  			log.debug("Error in Postion Thread: " + e.getMessage());
42  		} finally {
43  			log.debug("Closing Position Thread");
44  		}
45  	}
46  
47  	/**
48  	 * @return the bNewTrack
49  	 */
50  //	private boolean isNewTrack() {
51  //		return bNewTrack;
52  //	}
53  
54  	/**
55  	 * @param bNewTrack
56  	 *            the bNewTrack to set
57  	 */
58  	public void setNewTrack(boolean bNewTrack) {
59  		this.bNewTrack = bNewTrack;
60  	}
61  
62  }