Lines Matching refs:header

87                     var header = MP3FrameHeader.decode(this.mp3_stream);
93 var size = header.framesize();
142 var header = null;
145 header = MP3FrameHeader.decode(s);
151 return !!header;
178 this.prototype.parseDuration = function(header) { argument
183 if (!header || header.layer !== 3)
187 …stream.advance(XING_OFFSETS[header.flags & MP3FrameHeader.FLAGS.LSF_EXT ? 1 : 0][header.nchannels(…
201 var time = i / 100 * (frames * header.nbsamples() * 32) | 0;
235 this.emit('duration', (frames * header.nbsamples() * 32) / header.samplerate * 1000 | 0);
261 var header = MP3FrameHeader.decode(s);
262 if (!header)
267 sampleRate: header.samplerate,
268 channelsPerFrame: header.nchannels(),
269 bitrate: header.bitrate,
273 var sentDuration = this.parseDuration(header);
280 this.emit('duration', this.dataSize * 8 / header.bitrate * 1000 | 0);
302 this.header = null; // MPEG audio header
313 if (!this.header || !(this.header.flags & MP3FrameHeader.FLAGS.INCOMPLETE))
314 this.header = MP3FrameHeader.decode(stream);
316 this.header.flags &= ~MP3FrameHeader.FLAGS.INCOMPLETE;
319 var decoder = this.decoders[this.header.layer - 1];
321 var Layer = MP3Frame.layers[this.header.layer];
323 throw new Error("Layer " + this.header.layer + " is not supported.");
325 decoder = this.decoders[this.header.layer - 1] = new Layer();
540 var header = null;
569 header = new MP3FrameHeader();
570 header.decode(stream);
572 if (header.bitrate === 0) {
573 … if (stream.freerate === 0 || !stream.sync || (header.layer === 3 && stream.freerate > 640000))
574 MP3FrameHeader.free_bitrate(stream, header);
576 header.bitrate = stream.freerate;
577 header.flags |= MP3FrameHeader.FLAGS.FREEFORMAT;
581 var pad_slot = (header.flags & MP3FrameHeader.FLAGS.PADDING) ? 1 : 0;
583 if (header.layer === 1) {
584 var N = (((12 * header.bitrate / header.samplerate) << 0) + pad_slot) * 4;
586 …var slots_per_frame = (header.layer === 3 && (header.flags & MP3FrameHeader.FLAGS.LSF_EXT)) ? 72 :…
587 var N = ((slots_per_frame * header.bitrate / header.samplerate) << 0) + pad_slot;
614 header.flags |= MP3FrameHeader.FLAGS.INCOMPLETE;
615 return header;
618 MP3FrameHeader.free_bitrate = function(stream, header) { argument
619 var pad_slot = header.flags & MP3FrameHeader.FLAGS.PADDING ? 1 : 0,
620 … slots_per_frame = header.layer === 3 && header.flags & MP3FrameHeader.FLAGS.LSF_EXT ? 72 : 144;
626 var peek_header = header.copy();
629 …header.decode(peek_stream) && peek_header.layer === header.layer && peek_header.samplerate === hea…
632 if (header.layer === 1) {
633 rate = header.samplerate * (N - 4 * pad_slot + 4) / 48 / 1000 | 0;
635 rate = header.samplerate * (N - pad_slot + 1) / slots_per_frame / 1000 | 0;
647 if (rate < 8 || (header.layer === 3 && rate > 640))
3648 constructor: function(header, stream) { argument
3649 this.header = header;
3677 if (this.offset >= this.header.length)
3681 var header = this.readHeader();
3682 var decoder = header.identifier;
3684 if (header.identifier.charCodeAt(0) === 0) {
3685 this.offset += this.header.length + 1;
3701 var frame = this.decodeFrame(header, this.frameTypes[decoder]),
3715 … value: this.stream.readBuffer(Math.min(header.length, this.header.length - this.offset))
3719 … result.key = this.names[header.identifier] ? this.names[header.identifier] : header.identifier;
3725 this.offset += 10 + header.length;
3729 decodeFrame: function(header, fields) { argument
3738 var rest = header.length - (stream.offset - start);
3804 var rest = header.length - (stream.offset - start);
3818 if (this.header.major === 4) {
4531 var header = frame.header;
4532 var nch = header.nchannels();
4535 if (header.mode === MP3FrameHeader.MODE.JOINT_STEREO) {
4536 header.flags |= MP3FrameHeader.FLAGS.I_STEREO;
4537 bound = 4 + header.mode_extension * 4;
4540 if (header.flags & MP3FrameHeader.FLAGS.PROTECTION) {
4710 var header = frame.header;
4711 var nch = header.nchannels();
4714 if (header.flags & MP3FrameHeader.FLAGS.LSF_EXT) {
4716 } else if (header.flags & MP3FrameHeader.FLAGS.FREEFORMAT) {
4717 index = header.samplerate === 48000 ? 0 : 1;
4719 var bitrate_per_channel = header.bitrate;
4739 index = header.samplerate === 32000 ? 3 : 2;
4743 index = header.samplerate === 48000 ? 0 : 1;
4750 if (header.mode === MP3FrameHeader.MODE.JOINT_STEREO) {
4751 header.flags |= MP3FrameHeader.FLAGS.I_STEREO;
4752 bound = 4 + header.mode_extension * 4;
4783 if (header.flags & MP3FrameHeader.FLAGS.PROTECTION) {
4963 var header = frame.header;
4967 var nch = header.nchannels();
4968 …var si_len = (header.flags & MP3FrameHeader.FLAGS.LSF_EXT) ? (nch === 1 ? 9 : 17) : (nch === 1 ? 1…
4977 if (header.flags & MP3FrameHeader.FLAGS.PROTECTION) {
4982 var sideInfo = this.sideInfo(stream, nch, header.flags & MP3FrameHeader.FLAGS.LSF_EXT);
4987 header.flags |= priv_bitlen;
4988 header.private_bits |= si.private_bits;
5157 var header = frame.header;
5158 var sfreq = header.samplerate;
5160 if (header.flags & MP3FrameHeader.FLAGS.MPEG_2_5_EXT)
5167 if (header.flags & MP3FrameHeader.FLAGS.MPEG_2_5_EXT)
5171 var ngr = (header.flags & MP3FrameHeader.FLAGS.LSF_EXT) ? 1 : 2;
5188 if (header.flags & MP3FrameHeader.FLAGS.LSF_EXT) {
5189 …gth = this.scalefactors_lsf(stream, channel, ch === 0 ? 0 : si.gr[1].ch[1], header.mode_extension);
5198 if (header.mode === MP3FrameHeader.MODE.JOINT_STEREO && header.mode_extension !== 0)
5199 this.stereo(xr, si.gr, gr, header, sfbwidth[0]);
5781 Layer3.prototype.stereo = function(xr, granules, gr, header, sfbwidth) { argument
5790 modes[i] = header.mode_extension;
5793 if (header.mode_extension & tables.I_STEREO) {
5797 header.flags |= MP3FrameHeader.FLAGS.tables.I_STEREO;
5845 modes[i] = header.mode_extension & ~tables.I_STEREO;
5851 modes[i] = header.mode_extension & ~tables.I_STEREO;
5871 modes[i] = header.mode_extension & ~tables.I_STEREO;
5875 if (header.flags & MP3FrameHeader.FLAGS.LSF_EXT) {
5936 if (header.mode_extension & tables.MS_STEREO) {
5937 header.flags |= tables.MS_STEREO;
7285 var nch = frame.header.nchannels();
7286 var ns = frame.header.nbsamples();
7288 this.pcm.samplerate = frame.header.samplerate;