Code Monkey home page Code Monkey logo

id3-go's People

Contributors

casept avatar gerow avatar jcs avatar mikkyang avatar thijzert avatar viking avatar xhenner avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

chrishunt

id3-go's Issues

ffmpeg: Skipping 174 bytes of junk at 1107

ffmpeg -i shows that now with a file that has chapters added with this. It doesn't seem to affect players I tested, but it's worth investigating.

Adding two chapters to an mp3 and diffing the output of exiftool -V3 -l:

-  + [ID3v2_3 directory, 968 bytes]
+  + [ID3v2_3 directory, 1097 bytes]
     0000: 54 53 53 45 00 00 00 30 00 00 00 4c 41 4d 45 20 [TSSE...0...LAME ]
     0010: 36 34 62 69 74 73 20 76 65 72 73 69 6f 6e 20 33 [64bits version 3]
     0020: 2e 39 39 2e 35 20 28 68 74 74 70 3a 2f 2f 6c 61 [.99.5 (http://la]
@@ -54,10 +35,10 @@
     0090: 62 00 61 00 67 00 65 00 20 00 50 00 6f 00 64 00 [b.a.g.e. .P.o.d.]
     00a0: 63 00 61 00 73 00 74 00 54 59 45 52 00 00 00 0b [c.a.s.t.TYER....]
     00b0: 00 00 01 ff fe 32 00 30 00 31 00 37 00 43 4f 4d [.....2.0.1.7.COM]
-    00c0: 4d 00 00 00 2c 00 00 01 58 58 58 00 00 ff fe 68 [M...,...XXX....h]
-    00d0: 00 74 00 74 00 70 00 3a 00 2f 00 2f 00 67 00 61 [.t.t.p.:././.g.a]
-    00e0: 00 72 00 62 00 61 00 67 00 65 00 2e 00 66 00 6d [.r.b.a.g.e...f.m]
-    00f0: 00 2f 00 54 4c 45 4e 00 00 00 08 00 00 00 33 34 [./.TLEN.......34]
+    00c0: 4d 00 00 00 2c 00 00 01 58 58 58 ff fe 00 00 ff [M...,...XXX.....]
+    00d0: fe 68 00 74 00 74 00 70 00 3a 00 2f 00 2f 00 67 [.h.t.t.p.:././.g]
+    00e0: 00 61 00 72 00 62 00 61 00 67 00 65 00 2e 00 66 [.a.r.b.a.g.e...f]
+    00f0: 00 6d 00 54 4c 45 4e 00 00 00 08 00 00 00 33 34 [.m.TLEN.......34]
     0100: 39 32 33 33 36 41 50 49 43 00 00 02 b9 00 00 00 [92336APIC.......]
     0110: 69 6d 61 67 65 2f 70 6e 67 00 00 00 89 50 4e 47 [image/png....PNG]
     0120: 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 02 00 [........IHDR....]
@@ -102,7 +83,15 @@
     0390: 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................]
     03a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................]
     03b0: 00 76 fb 02 22 2e 98 1e 42 f4 83 a5 00 00 00 00 [.v.."...B.......]
-    03c0: 49 45 4e 44 ae 42 60 82                         [IEND.B`.]
+    03c0: 49 45 4e 44 ae 42 60 82 43 48 41 50 00 00 00 26 [IEND.B`.CHAP...&]
+    03d0: 00 00 63 68 70 30 00 00 00 00 00 00 00 03 e8 ff [..chp0..........]
+    03e0: ff ff ff ff ff ff ff 54 49 54 32 00 00 00 06 00 [.......TIT2.....]
+    03f0: 00 00 68 65 6c 6c 6f 00 43 48 41 50 00 00 00 2c [..hello.CHAP...,]
+    0400: 00 00 63 68 70 31 00 00 00 03 e8 00 35 49 f0 ff [..chp1......5I..]
+    0410: ff ff ff ff ff ff ff 54 49 54 32 00 00 00 0c 00 [.......TIT2.....]
+    0420: 00 00 6a 75 73 74 20 61 20 74 65 73 74 00 43 54 [..just a test.CT]
+    0430: 4f 43 00 00 00 11 00 00 74 6f 63 00 03 02 63 68 [OC......toc...ch]
+    0440: 70 30 00 63 68 70 31 00 00                      [p0.chp1..]
   | EncoderSettings = LAME 64bits version 3.99.5 (http://lame.sf.net)
   | - Tag 'TSSE' (48 bytes):
   |     0014: 00 4c 41 4d 45 20 36 34 62 69 74 73 20 76 65 72 [.LAME 64bits ver]
@@ -122,11 +111,11 @@
   | Year = 2017
   | - Tag 'TYER' (11 bytes):
   |     00bc: 01 ff fe 32 00 30 00 31 00 37 00                [...2.0.1.7.]
-  | Comment-xxx = http://garbage.fm/
+  | Comment-xxx = http://garbage.fm
   | - Tag 'COMM' (44 bytes):
-  |     00d1: 01 58 58 58 00 00 ff fe 68 00 74 00 74 00 70 00 [.XXX....h.t.t.p.]
-  |     00e1: 3a 00 2f 00 2f 00 67 00 61 00 72 00 62 00 61 00 [:././.g.a.r.b.a.]
-  |     00f1: 67 00 65 00 2e 00 66 00 6d 00 2f 00             [g.e...f.m./.]
+  |     00d1: 01 58 58 58 ff fe 00 00 ff fe 68 00 74 00 74 00 [.XXX......h.t.t.]
+  |     00e1: 70 00 3a 00 2f 00 2f 00 67 00 61 00 72 00 62 00 [p.:././.g.a.r.b.]
+  |     00f1: 61 00 67 00 65 00 2e 00 66 00 6d 00             [a.g.e...f.m.]
   | Length = 3492336
   | - Tag 'TLEN' (8 bytes):
   |     0107: 00 33 34 39 32 33 33 36                         [.3492336]
@@ -141,6 +130,20 @@
   |     0149: 00 2a 50 4c 54 45 c1 c1 c1 ff ff ff 33 33 33 99 [.*PLTE......333.]
   |     0159: 99 99 92 92 92 a0 a0 a0 39 39 39 71 71 71 a4 a4 [........999qqq..]
   |     [snip 617 bytes]
+  | ID3_CHAP = chp0..........TIT2.hello
+  | - Tag 'CHAP' (38 bytes):
+  |     03dc: 63 68 70 30 00 00 00 00 00 00 00 03 e8 ff ff ff [chp0............]
+  |     03ec: ff ff ff ff ff 54 49 54 32 00 00 00 06 00 00 00 [.....TIT2.......]
+  |     03fc: 68 65 6c 6c 6f 00                               [hello.]
+  | ID3_CHAP = chp1..5I.........TIT2.just a test
+  | - Tag 'CHAP' (44 bytes):
+  |     040c: 63 68 70 31 00 00 00 03 e8 00 35 49 f0 ff ff ff [chp1......5I....]
+  |     041c: ff ff ff ff ff 54 49 54 32 00 00 00 0c 00 00 00 [.....TIT2.......]
+  |     042c: 6a 75 73 74 20 61 20 74 65 73 74 00             [just a test.]
+  | ID3_CTOC = toc..chp0chp1
+  | - Tag 'CTOC' (17 bytes):
+  |     0442: 74 6f 63 00 03 02 63 68 70 30 00 63 68 70 31 00 [toc...chp0.chp1.]
+  |     0452: 00                                              [.]
 ID3v1:
   + [BinaryData directory, 128 bytes]
   | Title = Garbage Podcast: Episode 40

ffmpeg -i on the modified file:

[mp3 @ 0x7fb6db000000] Skipping 174 bytes of junk at 1107.
[mp3 @ 0x7fb6db000000] Estimating duration from bitrate, this may be inaccurate
Input #0, mp3, from '/Users/jcs/Desktop/garbage40.mp3':
  Metadata:
    encoder         : LAME 64bits version 3.99.5 (http://lame.sf.net)
    title           : Garbage Podcast: Episode 40
    artist          : Garbage Podcast
    TLEN            : 3492336
    comment         : http://garbage.fm
    date            : 2017
  Duration: 00:39:32.42, start: 0.000000, bitrate: 92 kb/s
    Chapter #0:0: start 0.000000, end 1.000000
    Metadata:
      title           : hello
    Chapter #0:1: start 1.000000, end 3492.336000
    Metadata:
      title           : just a test
    Stream #0:0: Audio: mp3, 32000 Hz, stereo, s16p, 92 kb/s
    Stream #0:1: Video: png, pal8(pc), 512x512 [SAR 2835:2835 DAR 1:1], 90k tbr, 90k tbn, 90k tbc
    Metadata:
      comment         : Other

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.