GNOME Bugzilla – Bug 510745
Add musepack sv7 support
Last modified: 2008-04-19 20:26:32 UTC
Hi, the attached patch adds musepack sv7 support to gst-ffmpeg. The only problem with this is, that the decoder needs parsed/demuxed data so we need to plug: ffdemux_mpc ! ffdec_mpc_sv7 Can we somehow force the demuxer to output "audio/x-musepack,parsed=true" and the decoder have parsed=true on the sinkpad? I guess this problem also happens for some other codecs. Another problem is, that there also is a MusePack SV8 decoder/demuxer in ffmpeg. As musepackdec is still in bad, what do you think about changing it's caps to "audio/x-musepack,streamversion=7" and have 8 for SV8? Bye
Created attachment 103239 [details] [review] ffmpeg-musepack.diff
Created attachment 103312 [details] [review] ffmpeg-musepack.diff Now this is properly autoplugged. Still the typefinder is registred (and the one for ogg/aiff and some other formats for which we have typefinders in base). Also the question about extending the musepack caps to hold the SV still holds.
sure, add the version.
Wouldn't musepackversion=N be more consistent with other formats?
Probably... but this needs to be added in the typefinder first, no? Or we need a musepackparse that takes audio/x-musepack in every version.
Hm, also the output of ffdemux_mpc is not musepack data. Instead it outputs the musepack frames without header. Any suggestions? Use audio/x-gst_ff-mpc or similar for this crippled data?
Ok, what about committing this but using "audio/x-musepack-ffdemux" as output caps for the demuxer and input for the decoder. The musepack stream version in caps stuff can be done later anyway, I plan to write a musepack parser in the next time which could do all this ;)
2008-04-19 Sebastian Dröge <slomo@circular-chaos.org> * ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps), (gst_ffmpeg_formatid_to_caps), (gst_ffmpeg_caps_to_codecid), (gst_ffmpeg_get_codecid_longname): * ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register): Add support for MusePack StreamVersion 7 and disable the StreamVersion 8 typefinder. Fixes bug #510745.