Skip to content
This repository has been archived by the owner on Sep 24, 2021. It is now read-only.

Please, add atom udta for mp4_join.py #82

Open
RomanEmelyanov opened this issue Apr 17, 2014 · 3 comments
Open

Please, add atom udta for mp4_join.py #82

RomanEmelyanov opened this issue Apr 17, 2014 · 3 comments

Comments

@RomanEmelyanov
Copy link

$./mp4_join.py --output target.mp4 1.mp4 2.mp4
Joining 1.mp4, 2.mp4 into target.mp4
Traceback (most recent call last):
File "./mp4_join.py", line 909, in
main()
File "./mp4_join.py", line 906, in main
concat_mp4s(args, output)
File "./mp4_join.py", line 878, in concat_mp4s
merge_mp4s(mp4s, output)
File "./mp4_join.py", line 840, in merge_mp4s
mp4s = map(read_mp4, ins)
File "./mp4_join.py", line 684, in read_mp4
atoms = parse_atoms(stream)
File "./mp4_join.py", line 676, in parse_atoms
atom = read_atom(stream)
File "./mp4_join.py", line 667, in read_atom
return atom_readers[type](stream, size, left, type)
File "./mp4_join.py", line 569, in read_composite_atom
atom = read_atom(stream)
File "./mp4_join.py", line 668, in read_atom
raise NotImplementedError('%s: %d' % (type, left))
NotImplementedError: udta: 746
$

@sandyUni
Copy link

我知道了,这个网页上的东西不存在

@iambus
Copy link
Owner

iambus commented Apr 21, 2014

Where did your 1.mp4 and 2.mp4 come from?

@RomanEmelyanov
Copy link
Author

I'm download it from Youtube, for example this two video have udta atom:
http://ytapi.com/api/9bZkp7q19f0/direct/18/
http://ytapi.com/api/XSGBVzeBUbk/direct/18/

Code added:
'pasp': read_raw,

  • 'udta': read_composite_atom,
  • 'meta': read_raw,
    'mdat': read_mdat,
    After this have another problem:
    #############################################################
    Traceback (most recent call last):
    File "./mp4_join.py", line 929, in
    main()
    File "./mp4_join.py", line 926, in main
    concat_mp4s(args, output)
    File "./mp4_join.py", line 898, in concat_mp4s
    merge_mp4s(mp4s, output)
    File "./mp4_join.py", line 863, in merge_mp4s
    moov = merge_moov(moovs, mdats)
    File "./mp4_join.py", line 792, in merge_moov
    stts0 = merge_stts(x.get('mdia', 'minf', 'stbl', 'stts').body[1] for x in trak0s)
    File "./mp4_join.py", line 722, in merge_stts
    assert len(set(durations)) == 1, 'not all durations equal'
    AssertionError: not all durations equal
    ##################################################################

Any ideas?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants