当前位置: 首页>>代码示例>>Java>>正文


Java TDebug.TraceAudioConverter方法代码示例

本文整理汇总了Java中org.tritonus.share.TDebug.TraceAudioConverter方法的典型用法代码示例。如果您正苦于以下问题:Java TDebug.TraceAudioConverter方法的具体用法?Java TDebug.TraceAudioConverter怎么用?Java TDebug.TraceAudioConverter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.tritonus.share.TDebug的用法示例。


在下文中一共展示了TDebug.TraceAudioConverter方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: isConversionSupported

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
/**
 * Add conversion support for any MpegEncoding source with FrameRate or FrameSize not empty.
 * @param targetFormat
 * @param sourceFormat
 * @return
 */
public boolean isConversionSupported(AudioFormat targetFormat, AudioFormat sourceFormat)
{
	if (TDebug.TraceAudioConverter) 
	{
				TDebug.out(">MpegFormatConversionProvider.isConversionSupported(AudioFormat targetFormat, AudioFormat sourceFormat):");
				TDebug.out("checking if conversion possible");
				TDebug.out("from: " + sourceFormat);
				TDebug.out("to: " + targetFormat);
	}

	boolean conversion = super.isConversionSupported(targetFormat, sourceFormat);
	if (conversion == false)
	{
		AudioFormat.Encoding enc = sourceFormat.getEncoding();
		if (enc instanceof MpegEncoding)
		{
			if ((sourceFormat.getFrameRate() != AudioSystem.NOT_SPECIFIED) || (sourceFormat.getFrameSize() != AudioSystem.NOT_SPECIFIED))
			{
				conversion = true;
			}
		}
	}
	return conversion;
}
 
开发者ID:fredsa,项目名称:forplay,代码行数:31,代码来源:MpegFormatConversionProvider.java

示例2: readFromStream

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
/**
 * Reads from the oggBitStream_ a specified number of Bytes(bufferSize_) worth
 * starting at index and puts them in the specified buffer[].
 *
 * @param buffer
 * @param index
 * @param bufferSize_
 * @return             the number of bytes read or -1 if error.
 */
private int readFromStream(byte[] buffer, int index, int bufferSize_)
{
  int bytes = 0;
  try
  {
    bytes = oggBitStream_.read(buffer, index, bufferSize_);
  }
  catch(Exception e)
  {
    if(TDebug.TraceAudioConverter) TDebug.out("Cannot Read Selected Song");
    bytes = -1;
  }
  currentBytes = currentBytes + bytes;
  return bytes;
}
 
开发者ID:fredsa,项目名称:forplay,代码行数:25,代码来源:DecodedVorbisAudioInputStream.java

示例3: closePhysicalStream

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
private void closePhysicalStream()
{
	if (TDebug.TraceAudioConverter) TDebug.out("DecodedJorbisAudioInputStream.closePhysicalStream(): begin");
	m_oggSyncState.clear();
	try
	{
		if (m_oggBitStream != null)
		{
			m_oggBitStream.close();
		}
		getCircularBuffer().close();
	}
	catch (Exception e)
	{
		if (TDebug.TraceAllExceptions) { TDebug.out(e); }
	}
	if (TDebug.TraceAudioConverter) TDebug.out("DecodedJorbisAudioInputStream.closePhysicalStream(): end");
}
 
开发者ID:projectestac,项目名称:jclic,代码行数:19,代码来源:JorbisFormatConversionProvider.java

示例4: MpegFormatConversionProvider

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
/**	
 * Constructor.
 */
public MpegFormatConversionProvider()
{
	super(Arrays.asList(INPUT_FORMATS), Arrays.asList(OUTPUT_FORMATS));
	if (TDebug.TraceAudioConverter) 
	{
		TDebug.out(">MpegFormatConversionProvider()");
	}
}
 
开发者ID:fredsa,项目名称:forplay,代码行数:12,代码来源:MpegFormatConversionProvider.java

示例5: getAudioInputStream

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
public AudioInputStream getAudioInputStream(AudioFormat targetFormat, AudioInputStream audioInputStream)
{
	if (TDebug.TraceAudioConverter) 
	{
		TDebug.out(">MpegFormatConversionProvider.getAudioInputStream(AudioFormat targetFormat, AudioInputStream audioInputStream):");
	}
	return new DecodedMpegAudioInputStream(targetFormat, audioInputStream);
}
 
开发者ID:fredsa,项目名称:forplay,代码行数:9,代码来源:MpegFormatConversionProvider.java

示例6: skipFrames

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
/**
 * Skip frames.
 * You don't need to call it severals times, it will exactly skip given frames number.
 * @param frames
 * @return bytes length skipped matching to frames skipped.
 */
public long skipFrames(long frames)
{
	if (TDebug.TraceAudioConverter) TDebug.out("skip(long frames) : begin");		
	int framesRead = 0;
	int bytesReads = 0;
	try
	{
		for (int i=0;i<frames;i++)
		{
			Header header = m_bitstream.readFrame();
			if (header != null)
			{
				int fsize = header.calculate_framesize();					
				bytesReads = bytesReads + fsize;
			} 
			m_bitstream.closeFrame();
			framesRead++;
		} 
	}
	catch (BitstreamException e)
	{
		if (TDebug.TraceAudioConverter) TDebug.out(e);
	}
	if (TDebug.TraceAudioConverter) TDebug.out("skip(long frames) : end");
	currentFrame = currentFrame + framesRead;
	return bytesReads;
}
 
开发者ID:fredsa,项目名称:forplay,代码行数:34,代码来源:DecodedMpegAudioInputStream.java

示例7: continueFromBufferFull

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
private void continueFromBufferFull()
{
  if(getCircularBuffer().availableWrite() < 2 * vorbisInfo.channels * bout)
  {
    if(TDebug.TraceAudioConverter) TDebug.out("Too much data in this data packet, better return, let the channel drain, and try again...");
    // Don't change play state.
    return;
  }
  getCircularBuffer().write(convbuffer, 0, 2 * vorbisInfo.channels * bout);
  // Don't change play state. Let outputSamples change play state, if necessary.
  outputSamples();
}
 
开发者ID:fredsa,项目名称:forplay,代码行数:13,代码来源:DecodedVorbisAudioInputStream.java

示例8: getAudioInputStream

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
public AudioInputStream getAudioInputStream(AudioFormat targetFormat, AudioInputStream audioInputStream)
{
	/** The AudioInputStream to return.
	 */
	AudioInputStream	convertedAudioInputStream = null;

	if (TDebug.TraceAudioConverter)
	{
		TDebug.out(">JorbisFormatConversionProvider.getAudioInputStream(): begin");
		TDebug.out("checking if conversion supported");
		TDebug.out("from: " + audioInputStream.getFormat());
		TDebug.out("to: " + targetFormat);
	}

	// what is this ???
	targetFormat=getDefaultTargetFormat(targetFormat, audioInputStream.getFormat());
	if (isConversionSupported(targetFormat,
				  audioInputStream.getFormat()))
	{
		if (TDebug.TraceAudioConverter)
		{
			TDebug.out("conversion supported; trying to create DecodedJorbisAudioInputStream");
		}
		convertedAudioInputStream = new
			DecodedJorbisAudioInputStream(
				targetFormat,
				audioInputStream);
	}
	else
	{
		if (TDebug.TraceAudioConverter)
		{
			TDebug.out("conversion not supported; throwing IllegalArgumentException");
			TDebug.out("<");
		}
		throw new IllegalArgumentException("conversion not supported");
	}
	if (TDebug.TraceAudioConverter) { TDebug.out("<JorbisFormatConversionProvider.getAudioInputStream(): end"); }
	return convertedAudioInputStream;
}
 
开发者ID:projectestac,项目名称:jclic,代码行数:41,代码来源:JorbisFormatConversionProvider.java

示例9: getDefaultTargetFormat

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
protected AudioFormat getDefaultTargetFormat(AudioFormat targetFormat, AudioFormat sourceFormat)
{
	if (TDebug.TraceAudioConverter) { TDebug.out("JorbisFormatConversionProvider.getDefaultTargetFormat(): target format: " + targetFormat); }
	if (TDebug.TraceAudioConverter) { TDebug.out("JorbisFormatConversionProvider.getDefaultTargetFormat(): source format: " + sourceFormat); }
	AudioFormat	newTargetFormat = null;
	// return first of the matching formats
	// pre-condition: the predefined target formats (FORMATS2) must be well-defined !
	Iterator iterator=getCollectionTargetFormats().iterator();
	while (iterator.hasNext())
	{
		AudioFormat format = (AudioFormat) iterator.next();
		if (AudioFormats.matches(targetFormat, format))
		{
			newTargetFormat = format;
		}
	}
	if (newTargetFormat == null)
	{
		throw new IllegalArgumentException("conversion not supported");
	}
	if (TDebug.TraceAudioConverter) { TDebug.out("JorbisFormatConversionProvider.getDefaultTargetFormat(): new target format: " + newTargetFormat); }
	// hacked together...
	// ... only works for PCM target encoding ...
	newTargetFormat = new AudioFormat(targetFormat.getEncoding(),
					  sourceFormat.getSampleRate(),
					  newTargetFormat.getSampleSizeInBits(),
					  newTargetFormat.getChannels(),
					  newTargetFormat.getFrameSize(),
					  sourceFormat.getSampleRate(),
					  newTargetFormat.isBigEndian());
	if (TDebug.TraceAudioConverter) { TDebug.out("JorbisFormatConversionProvider.getDefaultTargetFormat(): really new target format: " + newTargetFormat); }
	return newTargetFormat;
}
 
开发者ID:projectestac,项目名称:jclic,代码行数:34,代码来源:JorbisFormatConversionProvider.java

示例10: DecodedJorbisAudioInputStream

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
/**
 * Constructor.
 */
public DecodedJorbisAudioInputStream(AudioFormat outputFormat, AudioInputStream bitStream)
{
	super(outputFormat, AudioSystem.NOT_SPECIFIED);
	if (TDebug.TraceAudioConverter) { TDebug.out("DecodedJorbisAudioInputStream.<init>(): begin"); }
	m_oggBitStream = bitStream;
	m_bHeadersExpected = true;
	init_jorbis();
	if (TDebug.TraceAudioConverter) { TDebug.out("DecodedJorbisAudioInputStream.<init>(): end"); }
}
 
开发者ID:projectestac,项目名称:jclic,代码行数:13,代码来源:JorbisFormatConversionProvider.java

示例11: processComments

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
/**
 */
private void processComments()
{
	byte[][] ptr = m_vorbisComment.user_comments;
	String currComment = "";
	m_songComments.clear();
	for (int j = 0; j < ptr.length; j++)
	{
		if (ptr[j] == null)
		{
			break;
		}
		currComment = (new String(ptr[j], 0, ptr[j].length - 1)).trim();
		m_songComments.add(currComment);
		if (currComment.toUpperCase().startsWith("ARTIST"))
		{
			String artistLabelValue = currComment.substring(7);
		}
		else if (currComment.toUpperCase().startsWith("TITLE"))
		{
			String titleLabelValue = currComment.substring(6);
			String miniDragLabel = currComment.substring(6);
		}
		if (TDebug.TraceAudioConverter) TDebug.out("Comment: " + currComment);
	}
	currComment = "Bitstream: " + m_vorbisInfo.channels + " channel," + m_vorbisInfo.rate + "Hz";
	m_songComments.add(currComment);
	if (TDebug.TraceAudioConverter) TDebug.out(currComment);
	if (TDebug.TraceAudioConverter) currComment = "Encoded by: " + new String(m_vorbisComment.vendor, 0, m_vorbisComment.vendor.length - 1);
	m_songComments.add(currComment);
	if (TDebug.TraceAudioConverter) TDebug.out(currComment);
}
 
开发者ID:projectestac,项目名称:jclic,代码行数:34,代码来源:JorbisFormatConversionProvider.java

示例12: outputSamples

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
/**
 * This routine was extracted so that when the output buffer fills up,
 * we can break out of the loop, let the music channel drain, then
 * continue from where we were.
 */
private void outputSamples()
{
  int samples;
  while((samples = vorbisDspState.synthesis_pcmout(_pcmf, _index)) > 0)
  {
    float[][] pcmf = _pcmf[0];
    bout = (samples < convsize ? samples : convsize);
    double fVal = 0.0;
    // convert doubles to 16 bit signed ints (host order) and
    // interleave
    for(i = 0; i < vorbisInfo.channels; i++)
    {
      int pointer = i * 2;
      //int ptr=i;
      int mono = _index[i];
      for(int j = 0; j < bout; j++)
      {
        fVal = pcmf[i][mono + j] * 32767.;
        int val = (int) (fVal);
        if(val > 32767)
        {
          val = 32767;
        }
        if(val < -32768)
        {
          val = -32768;
        }
        if(val < 0)
        {
          val = val | 0x8000;
        }
        convbuffer[pointer] = (byte) (val);
        convbuffer[pointer + 1] = (byte) (val >>> 8);
        pointer += 2 * (vorbisInfo.channels);
      }
    }
    if(TDebug.TraceAudioConverter) TDebug.out("about to write: " + 2 * vorbisInfo.channels * bout);
    if(getCircularBuffer().availableWrite() < 2 * vorbisInfo.channels * bout)
    {
      if(TDebug.TraceAudioConverter) TDebug.out("Too much data in this data packet, better return, let the channel drain, and try again...");
      playState = playState_BufferFull;
      return;
    }
    getCircularBuffer().write(convbuffer, 0, 2 * vorbisInfo.channels * bout);
    if(bytes < bufferSize_)
      if(TDebug.TraceAudioConverter) TDebug.out("Finished with final buffer of music?");
    if(vorbisDspState.synthesis_read(bout) != 0)
    {
      if(TDebug.TraceAudioConverter) TDebug.out("VorbisDspState.synthesis_read returned -1.");
    }
  } // while(samples...)
  playState = playState_ReadData;
}
 
开发者ID:fredsa,项目名称:forplay,代码行数:59,代码来源:DecodedVorbisAudioInputStream.java

示例13: initParams

import org.tritonus.share.TDebug; //导入方法依赖的package包/类
private void initParams(AudioFormat sourceFormat, int bitRate, int channelMode, int quality, boolean VBR) {
	// simple check that bitrate is not too high for MPEG2 and MPEG2.5
	// todo: exception ?
	if (sourceFormat.getSampleRate()<32000 && bitRate>160) {
		bitRate=160;
	}
	if (TDebug.TraceAudioConverter) {
		TDebug.out("LAME parameters: channels="+sourceFormat.getChannels()
			   +"  sample rate="+((int) Math.round(sourceFormat.getSampleRate())+"Hz")
			   +"  bitrate="+bitRate+"KBit/s");
		TDebug.out("                 channelMode="+chmode2string(channelMode)
			   +"   quality="+quality2string(quality)
			   +"   VBR="+VBR+"  bigEndian="+sourceFormat.isBigEndian());
	}
	int result=nInitParams(sourceFormat.getChannels(), (int) Math.round(sourceFormat.getSampleRate()), 
			       bitRate, channelMode, quality,
			       VBR, sourceFormat.isBigEndian());
	if (result<0) {
		handleNativeException(result);
		throw new IllegalArgumentException(
		   "parameters not supported by LAME (returned "+result+")");
	}
	// provide effective parameters to user-space
	try {
		System.setProperty(PROPERTY_PREFIX + "effective.quality", 
				   quality2string(getEffectiveQuality()));
		System.setProperty(PROPERTY_PREFIX + "effective.bitrate", 
				   String.valueOf(getEffectiveBitRate()));
		System.setProperty(PROPERTY_PREFIX + "effective.chmode", 
				   chmode2string(getEffectiveChannelMode()));
		System.setProperty(PROPERTY_PREFIX + "effective.vbr", 
				   String.valueOf(getEffectiveVBR()));
		System.setProperty(PROPERTY_PREFIX + "effective.samplerate", 
				   String.valueOf(getEffectiveSampleRate()));
		System.setProperty(PROPERTY_PREFIX + "effective.encoding", 
				   getEffectiveEncoding().toString());
		System.setProperty(PROPERTY_PREFIX + "encoder.version", 
				   getEncoderVersion());
	}
	catch (Throwable t)
	{
		if (TDebug.TraceAllExceptions)
		{
			TDebug.out(t);
		}
	}
}
 
开发者ID:projectestac,项目名称:jclic,代码行数:48,代码来源:Lame.java


注:本文中的org.tritonus.share.TDebug.TraceAudioConverter方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。