|
|
@ -20,6 +20,7 @@ |
|
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
|
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include "libavutil/channel_layout.h" |
|
|
|
#include "libavutil/intreadwrite.h" |
|
|
|
#include "libavutil/intreadwrite.h" |
|
|
|
#include "swf.h" |
|
|
|
#include "swf.h" |
|
|
|
|
|
|
|
|
|
|
@ -139,7 +140,13 @@ static int swf_read_packet(AVFormatContext *s, AVPacket *pkt) |
|
|
|
if (!ast) |
|
|
|
if (!ast) |
|
|
|
return -1; |
|
|
|
return -1; |
|
|
|
ast->id = -1; /* -1 to avoid clash with video stream ch_id */ |
|
|
|
ast->id = -1; /* -1 to avoid clash with video stream ch_id */ |
|
|
|
ast->codec->channels = 1 + (v&1); |
|
|
|
if (v & 1) { |
|
|
|
|
|
|
|
ast->codec->channels = 2; |
|
|
|
|
|
|
|
ast->codec->channel_layout = AV_CH_LAYOUT_STEREO; |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
ast->codec->channels = 1; |
|
|
|
|
|
|
|
ast->codec->channel_layout = AV_CH_LAYOUT_MONO; |
|
|
|
|
|
|
|
} |
|
|
|
ast->codec->codec_type = AVMEDIA_TYPE_AUDIO; |
|
|
|
ast->codec->codec_type = AVMEDIA_TYPE_AUDIO; |
|
|
|
ast->codec->codec_id = ff_codec_get_id(swf_audio_codec_tags, (v>>4) & 15); |
|
|
|
ast->codec->codec_id = ff_codec_get_id(swf_audio_codec_tags, (v>>4) & 15); |
|
|
|
ast->need_parsing = AVSTREAM_PARSE_FULL; |
|
|
|
ast->need_parsing = AVSTREAM_PARSE_FULL; |
|
|
|