[ogg-dev] Merging Ogg streams whilst updating the Skeleton?

Nick Burch ogg at gagravarr.org
Sun Aug 24 00:21:14 PDT 2014


On Sat, 23 Aug 2014, Silvia Pfeiffer wrote:
> I would merge them with oggz-merge without skeleton and then add 
> skeleton using oggindex e.g. 
> http://git.xiph.org/?p=OggIndex.git;a=summary . (oggindex is also 
> available from http://firefogg.org/nightly/ )

Ah, that looks like the tool I was looking for! Nearly there now...


With a theora+speex file, or a theora+opus file, it fails with errors 
like:
   Writing output to 'testTheoraSPEEXSkeleton.ogg'
   FAIL: Unhandled stream type, serialno=478384172 aborting indexing!
(The serial number given is the serial of the opus or speex stream)


With a theora+theora+vorbis file, the message headers have both theora 
streams marked as the main stream and video_1:
  * Bone 1 - Message Headers:
   * Name = audio_1
   * Role = audio/main
   * Content-Type = audio/vorbis
  * Bone 2 - Message Headers:
   * Name = video_1
   * Role = video/main
   * Content-Type = video/theora
  * Bone 3 - Message Headers:
   * Name = video_1
   * Role = video/main
   * Content-Type = video/theora

How can I edit that to say which video is main and which is alternate? Are 
there options to pass to ogg-index for that? Or is there a magic 
fisbone-comment / skeleton-comment tool out there I need to use?


Oh, and one other thing - I'm not sure that the fisbone's generated by 
ogg-index are quite right, at least not based on the description on the 
wiki. For skeletons generated with ffmpeg2theora or libtheora, the message 
header offset is set to 0x2c=44. That's the start offset of 52 within the 
bone, less the size of the fisbone\0 identifier. oggi-index is generating 
them with the message header offset of 52, so indcluding the fisbone 
length, *but* still seems to write the the message headers from 52 bytes 
in from the start of the fisbone (not 60 as the offset might suggest). Is 
that a bug, or am I just mis-understanding something?

Thanks
Nick


More information about the ogg-dev mailing list