[Libav-user] ReZound Integration Question
Carl Eugen Hoyos
cehoyos at ag.or.at
Mon Oct 8 23:23:14 CEST 2012
Davy Durham <ddurham at ...> writes:
> I'm experimenting with changing rezound (a destructive audio
> editor) to use libavcodec/libavformat instead of its current
> use of many other libraries (libsndfile, libaudiofile, lame,
> manual coding in some places, etc).
Without knowing anything about rezound, I wonder if it wouldn't
make more sense to integrate rezound as an audio filter in
libavfilter (assuming it is a library)...
> So then if the user chooses the save the file after doing
> their editing, is it feasible (with libavformat) to replace
> stream X in the original file leaving all other streams
"Replace" might be the wrong word:
You can mux video and audio streams into the usual containers
(and some more), and you not just mux the edited and encoded
audio from rezound but also the unchanged streams from the
input file, but I wouldn't call the muxing "replacing"
> I don't immediately see something like a struct for each
> supported codec that describes all the options for that
> codec. [Did I miss it?]
I think so because many codecs have an AVOption struct that
describe their codec-specific options.
(Many options are global though).
> Also, is there a way to know from the library what codecs
> are supported by a given muxer?
I don't think so, but some containers (like avi and nut)
support basically any stream while others are special
(and some allow you to put things in it that don't
belong there). I suspect initializing a muxer with streams
tells you the answer.
> I've found the doxygen code and the api-example.c (which
> only helps with libavcodec). Are there other good
> resources for figuring this stuff out?
doc/examples contains some more example code nowadays.
More information about the Libav-user