1$ fq -i -d mp3 . /test.mp3 2mp3> grep(44100, "ID", "^ID3$", "^ID.?$", "Info", "magic", "\u00ff", [0x49, 0x44]) 3 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 40x20| 40| @|.frames[0].header.sample_rate: 44100 (0) 5 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 60xe0| 50 | P |.frames[1].header.sample_rate: 44100 (0) 7 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 80x1b0| 52 | R |.frames[2].header.sample_rate: 44100 (0) 9 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 100x1c0| 11 4b 36 4a 08 83 58 c9| .K6J..X.|.frames[2].data: raw bits 110x1d0|20 d4 29 52 98 c8 c8 f9 13 80 40 24 bc 91 23 42| .)R......@$..#B| 12* |until 0x279.7 (178) | | 13 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 140x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 15 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 160x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 17 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 180x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 19 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 200x40| 49 6e 66 6f | Info |.frames[0].xing.header: "Info" 21 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 220x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 23mp3> vgrep(44100, "ID", "^ID3$", "^ID.?$", "Info", "magic", "\u00ff", [0x49, 0x44]) 24 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 250x20| 40| @|.frames[0].header.sample_rate: 44100 (0) 26 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 270xe0| 50 | P |.frames[1].header.sample_rate: 44100 (0) 28 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 290x1b0| 52 | R |.frames[2].header.sample_rate: 44100 (0) 30 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 310x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 32 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 330x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 34 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 350x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 36 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 370x40| 49 6e 66 6f | Info |.frames[0].xing.header: "Info" 38mp3> fgrep(44100, "ID", "^ID3$", "^ID.?$", "Info", "magic", "\u00ff", [0x49, 0x44]) 39 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 400x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 41mp3> bgrep(44100, "ID", "^ID3$", "^ID.?$", "Info", "magic", "\u00ff", [0x49, 0x44]) 42 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 430x1c0| 11 4b 36 4a 08 83 58 c9| .K6J..X.|.frames[2].data: raw bits 440x1d0|20 d4 29 52 98 c8 c8 f9 13 80 40 24 bc 91 23 42| .)R......@$..#B| 45* |until 0x279.7 (178) | | 46 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 470x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 48 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 490x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 50 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 510x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 52 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 530x40| 49 6e 66 6f | Info |.frames[0].xing.header: "Info" 54 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 550x0|49 44 33 |ID3 |.headers[0].magic: "ID3" (valid) 56mp3> "64ff65ff66" | hex | bgrep("\u00ff"; "b") 57 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| 580x0|64 ff 65 ff 66| |d.e.f| |.: raw bits 0x0-0x4.7 (5) 59mp3> ^D 60