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


Java IAudioSamples.make方法代码示例

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


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

示例1: onAudioSamples

import com.xuggle.xuggler.IAudioSamples; //导入方法依赖的package包/类
@Override
public void onAudioSamples(IAudioSamplesEvent event) {
	IAudioSamples samples = event.getAudioSamples();
	if (audioResampler == null) {
		audioResampler = IAudioResampler.make(1, samples.getChannels(),
				16000, samples.getSampleRate());
	 	}
	if (event.getAudioSamples().getNumSamples() > 0) {
		IAudioSamples out = IAudioSamples.make(samples.getNumSamples(),
				samples.getChannels());
		audioResampler.resample(out, samples, samples.getNumSamples());
		AudioSamplesEvent asc = new AudioSamplesEvent(event.getSource(),
				out, event.getStreamIndex());
		super.onAudioSamples(asc);
		out.delete();
	 }
	 }
 
开发者ID:sumansaurabh,项目名称:AudioTranscoder,代码行数:18,代码来源:ConvertAudio.java

示例2: initialize

import com.xuggle.xuggler.IAudioSamples; //导入方法依赖的package包/类
/**
 * Initializes the reader thread with the given media.
 * @param container the media container
 * @param videoCoder the media video decoder
 * @param audioCoder the media audio decoder
 * @param audioConversions the flag(s) for any audio conversions to must take place
 */
public void initialize(IContainer container, IStreamCoder videoCoder, IStreamCoder audioCoder, int audioConversions) {
	// assign the local variables
	this.outputWidth = 0;
	this.outputHeight = 0;
	this.videoConversionEnabled = false;
	this.scale = false;
	this.container = container;
	this.videoCoder = videoCoder;
	this.audioCoder = audioCoder;
	this.audioConversions = audioConversions;
	
	// create a packet for reading
	this.packet = IPacket.make();
	
	// create the image converter for the video
	if (videoCoder != null) {
		this.width = this.videoCoder.getWidth();
		this.height = this.videoCoder.getHeight();
		IPixelFormat.Type type = this.videoCoder.getPixelType();
		this.picture = IVideoPicture.make(type, this.width, this.height);
		BufferedImage target = new BufferedImage(this.width, this.height, BufferedImage.TYPE_3BYTE_BGR);
		this.videoConverter = ConverterFactory.createConverter(target, type);
	}
	
	// create a resuable container for the samples
	if (audioCoder != null) {
		this.samples = IAudioSamples.make(1024, this.audioCoder.getChannels());
	}
}
 
开发者ID:wnbittle,项目名称:praisenter,代码行数:37,代码来源:XugglerMediaReaderThread.java

示例3: onAudioSamples

import com.xuggle.xuggler.IAudioSamples; //导入方法依赖的package包/类
/** {@inheritDoc} */
@Override
public void onAudioSamples(IAudioSamplesEvent event) {
	IAudioSamples samples = event.getAudioSamples();
	if (samples.getSampleRate() != rate || samples.getChannels() != channels) {
		log.debug("SampleRateAdjustTool onAudioSamples");
   		if (resampler == null) {
   			// http://build.xuggle.com/view/Stable/job/xuggler_jdk5_stable/javadoc/java/api/com/xuggle/xuggler/IAudioResampler.html
   			resampler = IAudioResampler.make(channels, samples.getChannels(), rate, samples.getSampleRate(), IAudioSamples.Format.FMT_S16, samples.getFormat());
   			log.info("Resampled formats - input: {} output: {}", resampler.getInputFormat(), resampler.getOutputFormat());
   		}
   		long sampleCount = samples.getNumSamples();
   		if (resampler != null && sampleCount > 0) {
   			log.trace("In - samples: {} rate: {} channels: {}", sampleCount, samples.getSampleRate(), samples.getChannels());
   			IAudioSamples out = IAudioSamples.make(sampleCount, channels);
   			resampler.resample(out, samples, sampleCount);
   			log.trace("Out - samples: {} rate: {} channels: {}", out.getNumSamples(), out.getSampleRate(), out.getChannels());
   			// queue audio
   			facade.queueAudio(out, event.getTimeStamp(), event.getTimeUnit());
   			//out.delete();
   			samples.delete();
   		} else {
   			facade.queueAudio(samples, event.getTimeStamp(), event.getTimeUnit());
   		}
   		log.debug("SampleRateAdjustTool onAudioSamples - end");
	} else {
		facade.queueAudio(samples, event.getTimeStamp(), event.getTimeUnit());
	}
}
 
开发者ID:Red5,项目名称:red5-hls-plugin,代码行数:30,代码来源:SampleRateAdjustTool.java


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