Lines Matching refs:parsedFrame

311 					unset($parsedFrame);
312 $parsedFrame['frame_name'] = $frame_name;
313 $parsedFrame['frame_flags_raw'] = $frame_flags;
314 $parsedFrame['data'] = substr($framedata, 0, $frame_size);
315 $parsedFrame['datalength'] = getid3_lib::CastAsInt($frame_size);
316 $parsedFrame['dataoffset'] = $framedataoffset;
318 $this->ParseID3v2Frame($parsedFrame, $ThisFileInfo);
319 $thisfile_id3v2[$frame_name][] = $parsedFrame;
506 function ParseID3v2Frame(&$parsedFrame, &$ThisFileInfo) { argument
511 $parsedFrame['framenamelong'] = $this->FrameNameLongLookup($parsedFrame['frame_name']);
512 if (empty($parsedFrame['framenamelong'])) {
513 unset($parsedFrame['framenamelong']);
515 $parsedFrame['framenameshort'] = $this->FrameNameShortLookup($parsedFrame['frame_name']);
516 if (empty($parsedFrame['framenameshort'])) {
517 unset($parsedFrame['framenameshort']);
524 …$parsedFrame['flags']['TagAlterPreservation'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x8000)…
525 …$parsedFrame['flags']['FileAlterPreservation'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x4000)…
526 …$parsedFrame['flags']['ReadOnly'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x2000)…
527 …$parsedFrame['flags']['compression'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x0080)…
528 …$parsedFrame['flags']['Encryption'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x0040)…
529 …$parsedFrame['flags']['GroupingIdentity'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x0020)…
534 …$parsedFrame['flags']['TagAlterPreservation'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x4000)…
535 …$parsedFrame['flags']['FileAlterPreservation'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x2000)…
536 …$parsedFrame['flags']['ReadOnly'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x1000)…
537 …$parsedFrame['flags']['GroupingIdentity'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x0040)…
538 …$parsedFrame['flags']['compression'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x0008)…
539 …$parsedFrame['flags']['Encryption'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x0004)…
540 …$parsedFrame['flags']['Unsynchronisation'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x0002)…
541 …$parsedFrame['flags']['DataLengthIndicator'] = (bool) ($parsedFrame['frame_flags_raw'] & 0x0001)…
544 if ($parsedFrame['flags']['Unsynchronisation']) {
545 $parsedFrame['data'] = $this->DeUnsynchronise($parsedFrame['data']);
550 if ($parsedFrame['flags']['compression']) {
551 … $parsedFrame['decompressed_size'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], 0, 4));
553 …g'][] = 'gzuncompress() support required to decompress ID3v2 frame "'.$parsedFrame['frame_name'].'…
554 } elseif ($decompresseddata = @gzuncompress(substr($parsedFrame['data'], 4))) {
555 $parsedFrame['data'] = $decompresseddata;
557 …][] = 'gzuncompress() failed on compressed contents of ID3v2 frame "'.$parsedFrame['frame_name'].'…
562 if (isset($parsedFrame['datalength']) && ($parsedFrame['datalength'] == 0)) {
564 …$warning = 'Frame "'.$parsedFrame['frame_name'].'" at offset '.$parsedFrame['dataoffset'].' has no…
565 switch ($parsedFrame['frame_name']) {
575 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'UFID')) || // 4.1 UFID …
576 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'UFI'))) { // 4.1 UFI Unique fil…
583 $frame_terminatorpos = strpos($parsedFrame['data'], "\x00");
584 $frame_idstring = substr($parsedFrame['data'], 0, $frame_terminatorpos);
585 $parsedFrame['ownerid'] = $frame_idstring;
586 $parsedFrame['data'] = substr($parsedFrame['data'], $frame_terminatorpos + strlen("\x00"));
587 unset($parsedFrame['data']);
590 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'TXXX')) || // 4.2.2 TXXX …
591 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'TXX'))) { // 4.2.2 TXX User def…
600 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
603 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
605 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
606 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
609 …$frame_description = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
613 $parsedFrame['encodingid'] = $frame_textencoding;
614 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
616 $parsedFrame['description'] = $frame_description;
617 …$parsedFrame['data'] = substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncod…
618 if (!empty($parsedFrame['framenameshort']) && !empty($parsedFrame['data'])) {
619 …ts'][$parsedFrame['framenameshort']][] = trim(getid3_lib::iconv_fallback($parsedFrame['encoding'],…
621 unset($parsedFrame['data']);
624 } elseif ($parsedFrame['frame_name']{0} == 'T') { // 4.2. T??[?] Text information frame
632 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
634 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
637 $parsedFrame['data'] = (string) substr($parsedFrame['data'], $frame_offset);
639 $parsedFrame['encodingid'] = $frame_textencoding;
640 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
642 if (!empty($parsedFrame['framenameshort']) && !empty($parsedFrame['data'])) {
645 …$string = getid3_lib::iconv_fallback($parsedFrame['encoding'], $ThisFileInfo['id3v2']['encoding'],…
649 $ThisFileInfo['id3v2']['comments'][$parsedFrame['framenameshort']][] = $string;
653 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'WXXX')) || // 4.3.2 WXXX …
654 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'WXX'))) { // 4.3.2 WXX User def…
663 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
665 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
667 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
668 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
671 …$frame_description = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
676 …$parsedFrame['data'] = substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncod…
678 …$frame_terminatorpos = strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_tex…
679 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
685 $frame_urldata = (string) substr($parsedFrame['data'], 0, $frame_terminatorpos);
688 $frame_urldata = (string) $parsedFrame['data'];
691 $parsedFrame['encodingid'] = $frame_textencoding;
692 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
694 $parsedFrame['url'] = $frame_urldata;
695 $parsedFrame['description'] = $frame_description;
696 if (!empty($parsedFrame['framenameshort']) && $parsedFrame['url']) {
697 …ents'][$parsedFrame['framenameshort']][] = getid3_lib::iconv_fallback($parsedFrame['encoding'], $T…
699 unset($parsedFrame['data']);
702 } elseif ($parsedFrame['frame_name']{0} == 'W') { // 4.3. W??? URL link frames
709 $parsedFrame['url'] = trim($parsedFrame['data']);
710 if (!empty($parsedFrame['framenameshort']) && $parsedFrame['url']) {
711 $ThisFileInfo['id3v2']['comments'][$parsedFrame['framenameshort']][] = $parsedFrame['url'];
713 unset($parsedFrame['data']);
716 …} elseif ((($id3v2_majorversion == 3) && ($parsedFrame['frame_name'] == 'IPLS')) || // 4.4 IPLS I…
717 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'IPL'))) { // 4.4 IPL Involved…
724 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
726 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
728 $parsedFrame['encodingid'] = $frame_textencoding;
729 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($parsedFrame['encodingid']);
731 $parsedFrame['data'] = (string) substr($parsedFrame['data'], $frame_offset);
732 if (!empty($parsedFrame['framenameshort']) && !empty($parsedFrame['data'])) {
733 …ents'][$parsedFrame['framenameshort']][] = getid3_lib::iconv_fallback($parsedFrame['encoding'], $T…
737 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'MCDI')) || // 4.4 MCDI …
738 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'MCI'))) { // 4.5 MCI Music C…
743 if (!empty($parsedFrame['framenameshort']) && !empty($parsedFrame['data'])) {
744 $ThisFileInfo['id3v2']['comments'][$parsedFrame['framenameshort']][] = $parsedFrame['data'];
748 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'ETCO')) || // 4.5 ETCO …
749 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'ETC'))) { // 4.6 ETC Event t…
763 $parsedFrame['timestampformat'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
765 while ($frame_offset < strlen($parsedFrame['data'])) {
766 $parsedFrame['typeid'] = substr($parsedFrame['data'], $frame_offset++, 1);
767 $parsedFrame['type'] = $this->ETCOEventLookup($parsedFrame['typeid']);
768 …$parsedFrame['timestamp'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offset, …
771 unset($parsedFrame['data']);
774 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'MLLT')) || // 4.6 MLLT …
775 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'MLL'))) { // 4.7 MLL MPEG loc…
788 …$parsedFrame['framesbetweenreferences'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], 0…
789 …$parsedFrame['bytesbetweenreferences'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], 2…
790 …$parsedFrame['msbetweenreferences'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], 5…
791 …$parsedFrame['bitsforbytesdeviation'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], 8…
792 …$parsedFrame['bitsformsdeviation'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], 9…
793 $parsedFrame['data'] = substr($parsedFrame['data'], 10);
794 while ($frame_offset < strlen($parsedFrame['data'])) {
795 …$deviationbitstream .= getid3_lib::BigEndian2Bin(substr($parsedFrame['data'], $frame_offset++, 1));
799 …$parsedFrame[$reference_counter]['bytedeviation'] = bindec(substr($deviationbitstream, 0, $parsedF…
800 …$parsedFrame[$reference_counter]['msdeviation'] = bindec(substr($deviationbitstream, $parsedFram…
801 …$deviationbitstream = substr($deviationbitstream, $parsedFrame['bitsforbytesdeviation'] + $parsedF…
804 unset($parsedFrame['data']);
807 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'SYTC')) || // 4.7 SYTC …
808 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'STC'))) { // 4.8 STC Synchro…
818 $parsedFrame['timestampformat'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
820 while ($frame_offset < strlen($parsedFrame['data'])) {
821 … $parsedFrame[$timestamp_counter]['tempo'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
822 if ($parsedFrame[$timestamp_counter]['tempo'] == 255) {
823 …$parsedFrame[$timestamp_counter]['tempo'] += ord(substr($parsedFrame['data'], $frame_offset++, 1));
825 …$parsedFrame[$timestamp_counter]['timestamp'] = getid3_lib::BigEndian2Int(substr($parsedFrame['dat…
829 unset($parsedFrame['data']);
832 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'USLT')) || // 4.8 USLT …
833 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'ULT'))) { // 4.9 ULT Unsynch…
843 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
845 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
847 $frame_language = substr($parsedFrame['data'], $frame_offset, 3);
849 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
850 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
853 …$frame_description = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
857 …$parsedFrame['data'] = substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncod…
859 $parsedFrame['encodingid'] = $frame_textencoding;
860 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
862 $parsedFrame['data'] = $parsedFrame['data'];
863 $parsedFrame['language'] = $frame_language;
864 $parsedFrame['languagename'] = $this->LanguageLookup($frame_language, false);
865 $parsedFrame['description'] = $frame_description;
866 if (!empty($parsedFrame['framenameshort']) && !empty($parsedFrame['data'])) {
867 …ents'][$parsedFrame['framenameshort']][] = getid3_lib::iconv_fallback($parsedFrame['encoding'], $T…
869 unset($parsedFrame['data']);
872 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'SYLT')) || // 4.9 SYLT …
873 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'SLT'))) { // 4.10 SLT Synchro…
889 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
891 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
893 $frame_language = substr($parsedFrame['data'], $frame_offset, 3);
895 $parsedFrame['timestampformat'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
896 $parsedFrame['contenttypeid'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
897 $parsedFrame['contenttype'] = $this->SYTLContentTypeLookup($parsedFrame['contenttypeid']);
898 $parsedFrame['encodingid'] = $frame_textencoding;
899 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
901 $parsedFrame['language'] = $frame_language;
902 $parsedFrame['languagename'] = $this->LanguageLookup($frame_language, false);
905 $frame_remainingdata = substr($parsedFrame['data'], $frame_offset);
915 …$parsedFrame['lyrics'][$timestampindex]['data'] = substr($frame_remainingdata, $frame_offset, $fra…
921 …$parsedFrame['lyrics'][$timestampindex]['timestamp'] = getid3_lib::BigEndian2Int(substr($frame_rem…
927 unset($parsedFrame['data']);
930 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'COMM')) || // 4.10 COMM …
931 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'COM'))) { // 4.11 COM Comments
940 if (strlen($parsedFrame['data']) < 5) {
942 …arning'][] = 'Invalid data (too short) for "'.$parsedFrame['frame_name'].'" frame at offset '.$par…
947 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
949 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
951 $frame_language = substr($parsedFrame['data'], $frame_offset, 3);
953 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
954 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
957 …$frame_description = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
961 …$frame_text = (string) substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncod…
963 $parsedFrame['encodingid'] = $frame_textencoding;
964 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
966 $parsedFrame['language'] = $frame_language;
967 $parsedFrame['languagename'] = $this->LanguageLookup($frame_language, false);
968 $parsedFrame['description'] = $frame_description;
969 $parsedFrame['data'] = $frame_text;
970 if (!empty($parsedFrame['framenameshort']) && !empty($parsedFrame['data'])) {
971 …ents'][$parsedFrame['framenameshort']][] = getid3_lib::iconv_fallback($parsedFrame['encoding'], $T…
976 …} elseif (($id3v2_majorversion >= 4) && ($parsedFrame['frame_name'] == 'RVA2')) { // 4.11 RVA2 Re…
989 $frame_terminatorpos = strpos($parsedFrame['data'], "\x00");
990 $frame_idstring = substr($parsedFrame['data'], 0, $frame_terminatorpos);
994 $frame_remainingdata = substr($parsedFrame['data'], $frame_terminatorpos + strlen("\x00"));
995 $parsedFrame['description'] = $frame_idstring;
999 $parsedFrame[$frame_channeltypeid]['channeltypeid'] = $frame_channeltypeid;
1000 …$parsedFrame[$frame_channeltypeid]['channeltype'] = $this->RVA2ChannelTypeLookup($frame_channel…
1001 …$parsedFrame[$frame_channeltypeid]['volumeadjust'] = getid3_lib::BigEndian2Int(substr($frame_rem…
1003 …$parsedFrame[$frame_channeltypeid]['bitspeakvolume'] = ord(substr($frame_remainingdata, $frame_off…
1004 $frame_bytespeakvolume = ceil($parsedFrame[$frame_channeltypeid]['bitspeakvolume'] / 8);
1005 …$parsedFrame[$frame_channeltypeid]['peakvolume'] = getid3_lib::BigEndian2Int(substr($frame_rem…
1008 unset($parsedFrame['data']);
1011 …} elseif ((($id3v2_majorversion == 3) && ($parsedFrame['frame_name'] == 'RVAD')) || // 4.12 RVAD …
1012 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'RVA'))) { // 4.12 RVA Relativ…
1035 …$frame_incrdecrflags = getid3_lib::BigEndian2Bin(substr($parsedFrame['data'], $frame_offset++, 1));
1036 $parsedFrame['incdec']['right'] = (bool) substr($frame_incrdecrflags, 6, 1);
1037 $parsedFrame['incdec']['left'] = (bool) substr($frame_incrdecrflags, 7, 1);
1038 $parsedFrame['bitsvolume'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1039 $frame_bytesvolume = ceil($parsedFrame['bitsvolume'] / 8);
1040 …$parsedFrame['volumechange']['right'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $fr…
1041 if ($parsedFrame['incdec']['right'] === false) {
1042 $parsedFrame['volumechange']['right'] *= -1;
1045 …$parsedFrame['volumechange']['left'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $fra…
1046 if ($parsedFrame['incdec']['left'] === false) {
1047 $parsedFrame['volumechange']['left'] *= -1;
1050 …$parsedFrame['peakvolume']['right'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $fram…
1052 …$parsedFrame['peakvolume']['left'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $fram…
1055 $parsedFrame['data'] = substr($parsedFrame['data'], $frame_offset);
1056 if (strlen($parsedFrame['data']) > 0) {
1057 $parsedFrame['incdec']['rightrear'] = (bool) substr($frame_incrdecrflags, 4, 1);
1058 $parsedFrame['incdec']['leftrear'] = (bool) substr($frame_incrdecrflags, 5, 1);
1059 …$parsedFrame['volumechange']['rightrear'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'],…
1060 if ($parsedFrame['incdec']['rightrear'] === false) {
1061 $parsedFrame['volumechange']['rightrear'] *= -1;
1064 …$parsedFrame['volumechange']['leftrear'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], …
1065 if ($parsedFrame['incdec']['leftrear'] === false) {
1066 $parsedFrame['volumechange']['leftrear'] *= -1;
1069 …$parsedFrame['peakvolume']['rightrear'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $…
1071 …$parsedFrame['peakvolume']['leftrear'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $…
1074 $parsedFrame['data'] = substr($parsedFrame['data'], $frame_offset);
1075 if (strlen($parsedFrame['data']) > 0) {
1076 $parsedFrame['incdec']['center'] = (bool) substr($frame_incrdecrflags, 3, 1);
1077 …$parsedFrame['volumechange']['center'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $f…
1078 if ($parsedFrame['incdec']['center'] === false) {
1079 $parsedFrame['volumechange']['center'] *= -1;
1082 …$parsedFrame['peakvolume']['center'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $fra…
1085 $parsedFrame['data'] = substr($parsedFrame['data'], $frame_offset);
1086 if (strlen($parsedFrame['data']) > 0) {
1087 $parsedFrame['incdec']['bass'] = (bool) substr($frame_incrdecrflags, 2, 1);
1088 …$parsedFrame['volumechange']['bass'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $fra…
1089 if ($parsedFrame['incdec']['bass'] === false) {
1090 $parsedFrame['volumechange']['bass'] *= -1;
1093 …$parsedFrame['peakvolume']['bass'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame…
1097 unset($parsedFrame['data']);
1100 …} elseif (($id3v2_majorversion >= 4) && ($parsedFrame['frame_name'] == 'EQU2')) { // 4.12 EQU2 Eq…
1113 $frame_interpolationmethod = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1114 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1115 …$frame_idstring = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset…
1119 $parsedFrame['description'] = $frame_idstring;
1120 $frame_remainingdata = substr($parsedFrame['data'], $frame_terminatorpos + strlen("\x00"));
1123 …$parsedFrame['data'][$frame_frequency] = getid3_lib::BigEndian2Int(substr($frame_remainingdata, 2,…
1126 $parsedFrame['interpolationmethod'] = $frame_interpolationmethod;
1127 unset($parsedFrame['data']);
1130 …} elseif ((($id3v2_majorversion == 3) && ($parsedFrame['frame_name'] == 'EQUA')) || // 4.12 EQUA …
1131 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'EQU'))) { // 4.13 EQU Equalis…
1143 $parsedFrame['adjustmentbits'] = substr($parsedFrame['data'], $frame_offset++, 1);
1144 $frame_adjustmentbytes = ceil($parsedFrame['adjustmentbits'] / 8);
1146 $frame_remainingdata = (string) substr($parsedFrame['data'], $frame_offset);
1151 $parsedFrame[$frame_frequency]['incdec'] = $frame_incdec;
1152 …$parsedFrame[$frame_frequency]['adjustment'] = getid3_lib::BigEndian2Int(substr($frame_remainingda…
1153 if ($parsedFrame[$frame_frequency]['incdec'] === false) {
1154 $parsedFrame[$frame_frequency]['adjustment'] *= -1;
1158 unset($parsedFrame['data']);
1161 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'RVRB')) || // 4.13 RVRB …
1162 … (($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'REV'))) { // 4.14 REV Reverb
1177 … $parsedFrame['left'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offset, 2));
1179 … $parsedFrame['right'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offset, 2));
1181 $parsedFrame['bouncesL'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1182 $parsedFrame['bouncesR'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1183 $parsedFrame['feedbackLL'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1184 $parsedFrame['feedbackLR'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1185 $parsedFrame['feedbackRR'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1186 $parsedFrame['feedbackRL'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1187 $parsedFrame['premixLR'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1188 $parsedFrame['premixRL'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1189 unset($parsedFrame['data']);
1192 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'APIC')) || // 4.14 APIC …
1193 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'PIC'))) { // 4.15 PIC Attache…
1206 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1208 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
1211 if ($id3v2_majorversion == 2 && strlen($parsedFrame['data']) > $frame_offset) {
1212 $frame_imagetype = substr($parsedFrame['data'], $frame_offset, 3);
1216 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1217 …$frame_mimetype = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset…
1230 if ($id3v2_majorversion > 2 && strlen($parsedFrame['data']) > $frame_offset) {
1231 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1232 …$frame_mimetype = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset…
1239 $frame_picturetype = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1241 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
1242 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
1245 …$frame_description = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
1249 $parsedFrame['encodingid'] = $frame_textencoding;
1250 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
1253 $parsedFrame['imagetype'] = $frame_imagetype;
1255 $parsedFrame['mime'] = $frame_mimetype;
1257 $parsedFrame['picturetypeid'] = $frame_picturetype;
1258 $parsedFrame['picturetype'] = $this->APICPictureTypeLookup($frame_picturetype);
1259 $parsedFrame['description'] = $frame_description;
1260 …$parsedFrame['data'] = substr($parsedFrame['data'], $frame_terminatorpos + strlen($thi…
1262 $imagechunkcheck = getid3_lib::GetDataImageSize($parsedFrame['data']);
1264 $parsedFrame['image_mime'] = 'image/'.getid3_lib::ImageTypesLookup($imagechunkcheck[2]);
1266 $parsedFrame['image_width'] = $imagechunkcheck[0];
1269 $parsedFrame['image_height'] = $imagechunkcheck[1];
1271 $parsedFrame['image_bytes'] = strlen($parsedFrame['data']);
1275 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'GEOB')) || // 4.15 GEOB …
1276 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'GEO'))) { // 4.16 GEO General…
1287 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1289 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
1291 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1292 …$frame_mimetype = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset…
1298 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
1299 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
1302 …$frame_filename = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset…
1308 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
1309 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
1312 …$frame_description = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
1318 $parsedFrame['objectdata'] = (string) substr($parsedFrame['data'], $frame_offset);
1319 $parsedFrame['encodingid'] = $frame_textencoding;
1320 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
1322 $parsedFrame['mime'] = $frame_mimetype;
1323 $parsedFrame['filename'] = $frame_filename;
1324 $parsedFrame['description'] = $frame_description;
1325 unset($parsedFrame['data']);
1328 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'PCNT')) || // 4.16 PCNT …
1329 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'CNT'))) { // 4.17 CNT Play co…
1336 $parsedFrame['data'] = getid3_lib::BigEndian2Int($parsedFrame['data']);
1339 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'POPM')) || // 4.17 POPM …
1340 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'POP'))) { // 4.18 POP Popular…
1349 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1350 …$frame_emailaddress = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_of…
1355 $frame_rating = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1356 $parsedFrame['data'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offset));
1357 $parsedFrame['email'] = $frame_emailaddress;
1358 $parsedFrame['rating'] = $frame_rating;
1359 unset($parsedFrame['data']);
1362 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'RBUF')) || // 4.18 RBUF …
1363 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'BUF'))) { // 4.19 BUF Recomme…
1371 …$parsedFrame['buffersize'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offset,…
1374 …$frame_embeddedinfoflags = getid3_lib::BigEndian2Bin(substr($parsedFrame['data'], $frame_offset++,…
1375 $parsedFrame['flags']['embededinfo'] = (bool) substr($frame_embeddedinfoflags, 7, 1);
1376 …$parsedFrame['nexttagoffset'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offs…
1377 unset($parsedFrame['data']);
1380 …} elseif (($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'CRM')) { // 4.20 Encrypte…
1389 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1390 …$frame_ownerid = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset);
1393 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1394 …$frame_description = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
1400 $parsedFrame['ownerid'] = $frame_ownerid;
1401 $parsedFrame['data'] = (string) substr($parsedFrame['data'], $frame_offset);
1402 $parsedFrame['description'] = $frame_description;
1403 unset($parsedFrame['data']);
1406 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'AENC')) || // 4.19 AENC …
1407 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'CRA'))) { // 4.21 CRA Audio e…
1417 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1418 …$frame_ownerid = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset);
1423 $parsedFrame['ownerid'] = $frame_ownerid;
1424 …$parsedFrame['previewstart'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offse…
1426 …$parsedFrame['previewlength'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offs…
1428 $parsedFrame['encryptioninfo'] = (string) substr($parsedFrame['data'], $frame_offset);
1429 unset($parsedFrame['data']);
1432 …} elseif ((($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'LINK')) || // 4.20 LINK …
1433 …(($id3v2_majorversion == 2) && ($parsedFrame['frame_name'] == 'LNK'))) { // 4.22 LNK Linked …
1444 $parsedFrame['frameid'] = substr($parsedFrame['data'], $frame_offset, 3);
1447 $parsedFrame['frameid'] = substr($parsedFrame['data'], $frame_offset, 4);
1451 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1452 $frame_url = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset);
1457 $parsedFrame['url'] = $frame_url;
1459 $parsedFrame['additionaldata'] = (string) substr($parsedFrame['data'], $frame_offset);
1460 if (!empty($parsedFrame['framenameshort']) && $parsedFrame['url']) {
1461 …$ThisFileInfo['id3v2']['comments'][$parsedFrame['framenameshort']][] = utf8_encode($parsedFrame['u…
1463 unset($parsedFrame['data']);
1466 …} elseif (($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'POSS')) { // 4.21 POSS Po…
1473 $parsedFrame['timestampformat'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1474 …$parsedFrame['position'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_of…
1475 unset($parsedFrame['data']);
1478 …} elseif (($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'USER')) { // 4.22 USER Te…
1487 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1489 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
1491 $frame_language = substr($parsedFrame['data'], $frame_offset, 3);
1493 $parsedFrame['language'] = $frame_language;
1494 $parsedFrame['languagename'] = $this->LanguageLookup($frame_language, false);
1495 $parsedFrame['encodingid'] = $frame_textencoding;
1496 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
1498 $parsedFrame['data'] = (string) substr($parsedFrame['data'], $frame_offset);
1499 if (!empty($parsedFrame['framenameshort']) && !empty($parsedFrame['data'])) {
1500 …ents'][$parsedFrame['framenameshort']][] = getid3_lib::iconv_fallback($parsedFrame['encoding'], $T…
1502 unset($parsedFrame['data']);
1505 …} elseif (($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'OWNE')) { // 4.23 OWNE Ow…
1514 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1516 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
1518 $parsedFrame['encodingid'] = $frame_textencoding;
1519 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
1521 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1522 …$frame_pricepaid = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offse…
1525 $parsedFrame['pricepaid']['currencyid'] = substr($frame_pricepaid, 0, 3);
1526 …$parsedFrame['pricepaid']['currency'] = $this->LookupCurrencyUnits($parsedFrame['pricepaid']['cu…
1527 $parsedFrame['pricepaid']['value'] = substr($frame_pricepaid, 3);
1529 $parsedFrame['purchasedate'] = substr($parsedFrame['data'], $frame_offset, 8);
1530 if (!$this->IsValidDateStampString($parsedFrame['purchasedate'])) {
1531parsedFrame['purchasedateunix'] = mktime (0, 0, 0, substr($parsedFrame['purchasedate'], 4, 2), sub…
1535 $parsedFrame['seller'] = (string) substr($parsedFrame['data'], $frame_offset);
1536 unset($parsedFrame['data']);
1539 …} elseif (($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'COMR')) { // 4.24 COMR Co…
1554 $frame_textencoding = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1556 …] = 'Invalid text encoding byte ('.$frame_textencoding.') in frame "'.$parsedFrame['frame_name'].'…
1559 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1560 …$frame_pricestring = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
1565 …$parsedFrame['price'][$frame_currencyid]['currency'] = $this->LookupCurrencyUnits($frame_currencyi…
1566 $parsedFrame['price'][$frame_currencyid]['value'] = substr($val, 3);
1569 $frame_datestring = substr($parsedFrame['data'], $frame_offset, 8);
1572 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1573 …$frame_contacturl = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offs…
1576 $frame_receivedasid = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1578 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
1579 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
1582 …$frame_sellername = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offs…
1588 …$frame_terminatorpos = @strpos($parsedFrame['data'], $this->TextEncodingTerminatorLookup($frame_te…
1589 …if (ord(substr($parsedFrame['data'], $frame_terminatorpos + strlen($this->TextEncodingTerminatorLo…
1592 …$frame_description = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_off…
1598 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1599 …$frame_mimetype = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset…
1602 $frame_sellerlogo = substr($parsedFrame['data'], $frame_offset);
1604 $parsedFrame['encodingid'] = $frame_textencoding;
1605 $parsedFrame['encoding'] = $this->TextEncodingNameLookup($frame_textencoding);
1607 $parsedFrame['pricevaliduntil'] = $frame_datestring;
1608 $parsedFrame['contacturl'] = $frame_contacturl;
1609 $parsedFrame['receivedasid'] = $frame_receivedasid;
1610 $parsedFrame['receivedas'] = $this->COMRReceivedAsLookup($frame_receivedasid);
1611 $parsedFrame['sellername'] = $frame_sellername;
1612 $parsedFrame['description'] = $frame_description;
1613 $parsedFrame['mime'] = $frame_mimetype;
1614 $parsedFrame['logo'] = $frame_sellerlogo;
1615 unset($parsedFrame['data']);
1618 …} elseif (($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'ENCR')) { // 4.25 ENCR En…
1628 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1629 …$frame_ownerid = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset);
1635 $parsedFrame['ownerid'] = $frame_ownerid;
1636 $parsedFrame['methodsymbol'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1637 $parsedFrame['data'] = (string) substr($parsedFrame['data'], $frame_offset);
1640 …} elseif (($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'GRID')) { // 4.26 GRID Gr…
1651 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1652 …$frame_ownerid = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset);
1658 $parsedFrame['ownerid'] = $frame_ownerid;
1659 $parsedFrame['groupsymbol'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1660 $parsedFrame['data'] = (string) substr($parsedFrame['data'], $frame_offset);
1663 …} elseif (($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'PRIV')) { // 4.27 PRIV Pr…
1671 $frame_terminatorpos = @strpos($parsedFrame['data'], "\x00", $frame_offset);
1672 …$frame_ownerid = substr($parsedFrame['data'], $frame_offset, $frame_terminatorpos - $frame_offset);
1678 $parsedFrame['ownerid'] = $frame_ownerid;
1679 $parsedFrame['data'] = (string) substr($parsedFrame['data'], $frame_offset);
1682 …} elseif (($id3v2_majorversion >= 4) && ($parsedFrame['frame_name'] == 'SIGN')) { // 4.28 SIGN Si…
1690 $parsedFrame['groupsymbol'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1691 $parsedFrame['data'] = (string) substr($parsedFrame['data'], $frame_offset);
1694 …} elseif (($id3v2_majorversion >= 4) && ($parsedFrame['frame_name'] == 'SEEK')) { // 4.29 SEEK Se…
1700 …$parsedFrame['data'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offs…
1703 …} elseif (($id3v2_majorversion >= 4) && ($parsedFrame['frame_name'] == 'ASPI')) { // 4.30 ASPI Au…
1714 …$parsedFrame['datastart'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offset, …
1716 …$parsedFrame['indexeddatalength'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_…
1718 …$parsedFrame['indexpoints'] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offset…
1720 $parsedFrame['bitsperpoint'] = ord(substr($parsedFrame['data'], $frame_offset++, 1));
1721 $frame_bytesperpoint = ceil($parsedFrame['bitsperpoint'] / 8);
1723 …$parsedFrame['indexes'][$i] = getid3_lib::BigEndian2Int(substr($parsedFrame['data'], $frame_offset…
1726 unset($parsedFrame['data']);
1728 …} elseif (($id3v2_majorversion >= 3) && ($parsedFrame['frame_name'] == 'RGAD')) { // Replay Gain A…
1741 …$parsedFrame['peakamplitude'] = getid3_lib::BigEndian2Float(substr($parsedFrame['data'], $frame_of…
1743 $rg_track_adjustment = getid3_lib::Dec2Bin(substr($parsedFrame['data'], $frame_offset, 2));
1745 $rg_album_adjustment = getid3_lib::Dec2Bin(substr($parsedFrame['data'], $frame_offset, 2));
1747 …$parsedFrame['raw']['track']['name'] = getid3_lib::Bin2Dec(substr($rg_track_adjustment, 0, 3…
1748 …$parsedFrame['raw']['track']['originator'] = getid3_lib::Bin2Dec(substr($rg_track_adjustment, 3, 3…
1749 …$parsedFrame['raw']['track']['signbit'] = getid3_lib::Bin2Dec(substr($rg_track_adjustment, 6, 1…
1750 …$parsedFrame['raw']['track']['adjustment'] = getid3_lib::Bin2Dec(substr($rg_track_adjustment, 7, 9…
1751 …$parsedFrame['raw']['album']['name'] = getid3_lib::Bin2Dec(substr($rg_album_adjustment, 0, 3…
1752 …$parsedFrame['raw']['album']['originator'] = getid3_lib::Bin2Dec(substr($rg_album_adjustment, 3, 3…
1753 …$parsedFrame['raw']['album']['signbit'] = getid3_lib::Bin2Dec(substr($rg_album_adjustment, 6, 1…
1754 …$parsedFrame['raw']['album']['adjustment'] = getid3_lib::Bin2Dec(substr($rg_album_adjustment, 7, 9…
1755 …$parsedFrame['track']['name'] = getid3_lib::RGADnameLookup($parsedFrame['raw']['track']['nam…
1756 …$parsedFrame['track']['originator'] = getid3_lib::RGADoriginatorLookup($parsedFrame['raw']['track'…
1757 …$parsedFrame['track']['adjustment'] = getid3_lib::RGADadjustmentLookup($parsedFrame['raw']['track'…
1758 …$parsedFrame['album']['name'] = getid3_lib::RGADnameLookup($parsedFrame['raw']['album']['nam…
1759 …$parsedFrame['album']['originator'] = getid3_lib::RGADoriginatorLookup($parsedFrame['raw']['album'…
1760 …$parsedFrame['album']['adjustment'] = getid3_lib::RGADadjustmentLookup($parsedFrame['raw']['album'…
1762 $ThisFileInfo['replay_gain']['track']['peak'] = $parsedFrame['peakamplitude'];
1763 $ThisFileInfo['replay_gain']['track']['originator'] = $parsedFrame['track']['originator'];
1764 $ThisFileInfo['replay_gain']['track']['adjustment'] = $parsedFrame['track']['adjustment'];
1765 $ThisFileInfo['replay_gain']['album']['originator'] = $parsedFrame['album']['originator'];
1766 $ThisFileInfo['replay_gain']['album']['adjustment'] = $parsedFrame['album']['adjustment'];
1768 unset($parsedFrame['data']);