- content.reset (new SndfileContent (film, node, version));
- } else if (type == "SubRip") {
- content.reset (new SubRipContent (film, node, version));
+ /* SndfileContent is now handled by the FFmpeg code rather than by
+ separate libsndfile-based code.
+ */
+ content.reset (new FFmpegContent (node, version, notes));
+
+ content->audio->set_stream (
+ AudioStreamPtr (
+ new FFmpegAudioStream (
+ "Stream", 0,
+ node->number_child<int> ("AudioFrameRate"),
+ node->number_child<Frame> ("AudioLength"),
+ AudioMapping (node->node_child ("AudioMapping"), version)
+ )
+ )
+ );
+
+ } else if (type == "SubRip" || type == "TextSubtitle") {
+ content.reset (new StringTextFileContent (node, version));