On Mar 21, 2014, at 08:07 26, Chris Smowton <[email protected]> wrote:
> The next feature Cam FM really wanted was M4A import support. The attached > patch provides it using libmp4v2 for metadata extraction and faad > (dynamically located searching rdxport.cgi's path at runtime) for audio > extraction. It calls the libsndfile import path on a temporary wav produced > using faad. RD v1.x used this approach extensively for doing audio conversions. We moved away from it to our current in-process based approach because of a number of problems; the most intractable being process control: it was very difficult reliably to detect and properly recover from errors occurring in one of the external converters. > I appreciate this differs from the other stage 1 audio conversion filters, > which perform audio extraction in-process; however it seemed as if I would > need to more or less copy-and-paste 1,000 lines worth of faad into Rivendell > to go that way, and miss out on future faad patches to boot. Therefore I > stuck with invoking an external process. Because faad cannot be instructed to > seek and decode only a subset of the file this will be very inefficient at > importing a small snippet from a huge source file; however I expect this is a > rare use case if it exists at all? M4A support for Rivendell is a terrific idea, but I think we need to do it ‘in-process’ in the same way as all of the other converters. Faad(1) itself is in fact just a command-line wrapper around libfaad (in the same way as lame(1) is a wrapper around libmp3lame), so this should be possible without having ‘swallow’ a lot of code from Faad. Cheers! |-------------------------------------------------------------------------| | Frederick F. Gleason, Jr. | Chief Developer | | | Paravel Systems | |-------------------------------------------------------------------------| | A room without books is like a body without a soul. | | -- Cicero | |-------------------------------------------------------------------------| _______________________________________________ Rivendell-dev mailing list [email protected] http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
