PDA

View Full Version : 关于音频0x706D格式播放问题 附上测试视频 欢迎高手们测试


heroxs
11-15-2008, 10:24 AM
( 测试视频在3楼 )

关于音频0x706D 格式播放问题

Media Type 0:
--------------------------
AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio({73647561-0000-0010-8000-00AA00389B71})
subtype: 未知({0000706D-0000-0010-8000-00AA00389B71})
formattype: FORMAT_WaveFormatEx({05589F81-C356-11CE-BF01-00AA0055595A})
bFixedSizeSamples: False
bTemporalCompression: False
lSampleSize: 1
cbFormat: 18
pbFormat: $6D 70 02 00 00 7D 00 00 E4 14 00 00 01 00 00 00 00 00

WAVEFORMATEX:
wFormatTag: 未知(0x706D)($706D)
nChannels: 2
nSamplesPerSec: 32000
nAvgBytesPerSec: 5348
nBlockAlign: 1
wBitsPerSample: 0

这个在KMPlayer 里无法播放, 出现上边错误, 但是在MPlayer 里可以正常播放, 看了下MPlayer 的codecs.ini ,有关0x706D 内容如下:

audiocodec faad
info "FAAD AAC (MPEG-2/MPEG-4 Audio) decoder"
status working
fourcc mp4a,MP4A
fourcc "VLB " ; Used in NSV, not really working
fourcc "AAC " ; Used in NSV
fourcc "AACP" ; Used in NSV for AACPlus
format 0xff
format 0x706D
driver faad
dll libfaad2

audiocodec ffaac
info "FFmpeg AAC (MPEG-2/MPEG-4 Audio) decoder"
status working
fourcc mp4a,MP4A
fourcc "VLB " ; Used in NSV, not really working
fourcc "AAC " ; Used in NSV
fourcc "AACP" ; Used in NSV for AACPlus
fourcc raac,racp
format 0xff
format 0x706D
driver ffmpeg
dll aac

怎么处理可以让 KMPlayer 也能正常播放 “0x706D” 格式音频?

willin
11-15-2008, 10:09 PM
試一下:
[Only registered and activated users can see links]

heroxs
11-16-2008, 10:23 AM
关于 libfaad2.dll 之类的DLL全有, 无法播放。
附上一视频, 请测试。

willin
11-16-2008, 07:03 PM
試了, 有影像沒聲音, 還是查不出那邊問題...
找了Google, 這問題在網上可以找到很多人在談:
[Only registered and activated users can see links](日本)
[Only registered and activated users can see links](美國)
[Only registered and activated users can see links](中國)
到現在還沒答案~
罪魁禍首: "Linux下的压片转换工具mencoder"

heroxs
11-16-2008, 07:57 PM
試了, 有影像沒聲音, 還是查不出那邊問題...
找了Google, 這問題在網上可以找到很多人在談:
……
到現在還沒答案~
罪魁禍首: "Linux下的压片转换工具mencoder"

原来还是无解! 不过 MPlayer 播放一点问题没有, 搜索了下他的源代码, 在 libavformat 目录下的 riff.c 里发现 0x706d 截取如下:

const AVCodecTag codec_wav_tags[] = {
{ CODEC_ID_MP2, 0x50 },
{ CODEC_ID_MP3, 0x55 },
{ CODEC_ID_AC3, 0x2000 },
{ CODEC_ID_DTS, 0x2001 },
{ CODEC_ID_PCM_S16LE, 0x01 },
{ CODEC_ID_PCM_U8, 0x01 }, /* must come after s16le in this list */
{ CODEC_ID_PCM_S24LE, 0x01 },
{ CODEC_ID_PCM_S32LE, 0x01 },
{ CODEC_ID_PCM_ALAW, 0x06 },
{ CODEC_ID_PCM_MULAW, 0x07 },
{ CODEC_ID_ADPCM_MS, 0x02 },
{ CODEC_ID_ADPCM_IMA_WAV, 0x11 },
{ CODEC_ID_ADPCM_YAMAHA, 0x20 },
{ CODEC_ID_ADPCM_G726, 0x45 },
{ CODEC_ID_ADPCM_IMA_DK4, 0x61 }, /* rogue format number */
{ CODEC_ID_ADPCM_IMA_DK3, 0x62 }, /* rogue format number */
{ CODEC_ID_WMAV1, 0x160 },
{ CODEC_ID_WMAV2, 0x161 },
{ CODEC_ID_AAC, 0x706d },
{ CODEC_ID_AAC, 0xff },
{ CODEC_ID_VORBIS, ('V'<<8)+'o' }, //HACK/FIXME, does vorbis in WAV/AVI have an (in)official id?
{ CODEC_ID_SONIC, 0x2048 },
{ CODEC_ID_SONIC_LS, 0x2048 },
{ CODEC_ID_ADPCM_CT, 0x200 },
{ CODEC_ID_ADPCM_SWF, ('S'<<8)+'F' },
{ CODEC_ID_TRUESPEECH, 0x22 },
{ CODEC_ID_FLAC, 0xF1AC },
{ CODEC_ID_IMC, 0x401 },
{ CODEC_ID_GSM_MS, 0x31 },
{ CODEC_ID_ATRAC3, 0x270 },
{ CODEC_ID_VOXWARE, 0x75 },

哪位高手 能借鉴他的方法, 解决KMP的问题?

MPlayer源码下载地址:
[Only registered and activated users can see links]

ftp://ftp.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc2.tar.bz2

DavidGZY
11-17-2008, 07:16 PM
更新了一下ffdshow, 依然没声音。 看起来只能是如下图这样了。 改扩展名, 比如.706d, 然后.706d添加到 MPlayer 栏。 再有不能播放的, 就用 MPlayer 渲染一下试试 ~~哈哈
( 有 mplayer.dll 这个文件吧?? )

Anonymous
11-18-2008, 08:56 AM
更新了一下ffdshow, 依然没声音。 看起来只能是如下图这样了。 改扩展名, 比如.706d, 然后.706d添加到 MPlayer 栏。 再有不能播放的, 就用 MPlayer 渲染一下试试 ~~哈哈
( 有 mplayer.dll 这个文件吧?? )
那是,解码部分在MPlayer 内部, 也只好这样曲线救国了。 :cool:

heroxs
11-18-2008, 09:34 PM
更新了一下ffdshow, 依然没声音。 看起来只能是如下图这样了。 改扩展名, 比如.706d, 然后.706d添加到 MPlayer 栏。 再有不能播放的, 就用 MPlayer 渲染一下试试 ~~哈哈
( 有 mplayer.dll 这个文件吧?? )


高人! 这方法可行。 不过扩展名改成 .fac 了(毕竟是FAAC 的main编码方式), 方便看。
先这样了, 估计要从根上解决 得改源码才行。

hardfarmer
11-18-2008, 11:31 PM
请问 蚂蚱大师,没有 mplayer.dll 这个文件 怎么办啊

DavidGZY
11-19-2008, 11:12 AM
:p 偶可不是大师.. . .

willin
11-19-2008, 10:48 PM
官方 KMPlayer 不帶 mplayer.dll , 可按右鍵->參數選項|其它->所需文件管理 會自動補上 mplayer.dll
想不到這下 mplayer 派上用場了~~~