Turn on more decoders
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28451 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
d2c702af77
commit
e19363c6a2
@ -117,16 +117,14 @@ avCodec::Setup(media_format *ioEncodedFormat, const void *infoBuffer,
|
||||
if (isAudio && !fOutputBuffer)
|
||||
fOutputBuffer = new char[100000];
|
||||
|
||||
#if DEBUG
|
||||
//#if DEBUG
|
||||
char buffer[1024];
|
||||
string_for_format(*ioEncodedFormat, buffer, sizeof(buffer);
|
||||
string_for_format(*ioEncodedFormat, buffer, sizeof(buffer));
|
||||
TRACE("[%c] input_format=%s\n", isAudio?('a'):('v'), buffer);
|
||||
TRACE("[%c] infoSize=%ld\n", isAudio?('a'):('v'), infoSize);
|
||||
TRACE("[%c] user_data_type=%08lx\n", isAudio?('a'):('v'),
|
||||
ioEncodedFormat->user_data_type);
|
||||
// TRACE("[%c] meta_data_size=%ld\n", isAudio?('a'):('v'),
|
||||
// ioEncodedFormat->meta_data_size);
|
||||
#endif
|
||||
TRACE("[%c] user_data_type=%08lx\n", isAudio?('a'):('v'), ioEncodedFormat->user_data_type);
|
||||
// TRACE("[%c] meta_data_size=%ld\n", isAudio?('a'):('v'), ioEncodedFormat->meta_data_size);
|
||||
//#endif
|
||||
|
||||
media_format_description descr;
|
||||
for (int32 i = 0; gCodecTable[i].id; i++) {
|
||||
@ -157,10 +155,10 @@ avCodec::Setup(media_format *ioEncodedFormat, const void *infoBuffer,
|
||||
| descr.u.misc.codec;
|
||||
break;
|
||||
default:
|
||||
puts("ERR family");
|
||||
puts("ERR family");
|
||||
return B_ERROR;
|
||||
}
|
||||
TRACE(" codec id = \"%c%c%c%c\"\n", (char)((cid >> 24) & 0xff),
|
||||
TRACE(" 0x%04lx codec id = \"%c%c%c%c\"\n", uint32(cid), (char)((cid >> 24) & 0xff),
|
||||
(char)((cid >> 16) & 0xff), (char)((cid >> 8) & 0xff),
|
||||
(char)(cid & 0xff));
|
||||
|
||||
@ -393,7 +391,7 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount,
|
||||
set_thread_priority(find_thread(NULL), B_NORMAL_PRIORITY);
|
||||
#endif
|
||||
|
||||
TRACE("[%c] avCodec::Decode()\n", isAudio?('a'):('v'));
|
||||
// TRACE("[%c] avCodec::Decode()\n", isAudio?('a'):('v'));
|
||||
|
||||
if (isAudio) {
|
||||
|
||||
@ -432,7 +430,7 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount,
|
||||
status_t err;
|
||||
err = GetNextChunk(&fChunkBuffer, &fChunkBufferSize, &chunk_mh);
|
||||
if (err != B_OK || fChunkBufferSize < 0) {
|
||||
TRACE("GetNextChunk error\n");
|
||||
TRACE("GetNextChunk error %ld\n",fChunkBufferSize);
|
||||
fChunkBufferSize = 0;
|
||||
break;
|
||||
}
|
||||
@ -456,8 +454,7 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount,
|
||||
fChunkBufferOffset = 0;
|
||||
fChunkBufferSize = 0;
|
||||
// } else {
|
||||
// TRACE("audio decode: len %d, out_size %d\n", len,
|
||||
// out_size);
|
||||
// TRACE("audio decode: len %d, out_size %d\n", len, out_size);
|
||||
}
|
||||
fChunkBufferOffset += len;
|
||||
fChunkBufferSize -= len;
|
||||
@ -475,8 +472,7 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount,
|
||||
|
||||
err = GetNextChunk(&data, &size, &chunk_mh);
|
||||
if (err != B_OK) {
|
||||
TRACE("avCodec::Decode(): error 0x%08lx from GetNextChunk()\n",
|
||||
err);
|
||||
TRACE("avCodec::Decode(): error 0x%08lx from GetNextChunk()\n", err);
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -527,8 +523,8 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount,
|
||||
#ifdef DO_PROFILING
|
||||
prof_t2 = system_time();
|
||||
#endif
|
||||
TRACE("ONE FRAME OUT !! len=%d size=%ld (%s)\n", len, size,
|
||||
pixfmt_to_string(ffc->pix_fmt));
|
||||
// TRACE("ONE FRAME OUT !! len=%d size=%ld (%s)\n", len, size,
|
||||
// pixfmt_to_string(ffc->pix_fmt));
|
||||
/*
|
||||
opicture.data[0] = (uint8_t *)out_buffer;
|
||||
opicture.linesize[0] = fOutputVideoFormat.display.bytes_per_row;
|
||||
|
@ -49,6 +49,7 @@ const struct codec_table gCodecTable[] = {
|
||||
{CODEC_ID_MP2, B_MEDIA_ENCODED_AUDIO, B_QUICKTIME_FORMAT_FAMILY, 0x6D730050, "MP Layer2"},
|
||||
{CODEC_ID_MP2, B_MEDIA_ENCODED_AUDIO, B_QUICKTIME_FORMAT_FAMILY, 0x6D730055, "MP Layer3"},
|
||||
{CODEC_ID_ADPCM_IMA_QT, B_MEDIA_ENCODED_AUDIO, B_QUICKTIME_FORMAT_FAMILY, 'ima4', "Quicktime IMA4"},
|
||||
{CODEC_ID_ADPCM_IMA_QT, B_MEDIA_ENCODED_AUDIO, B_QUICKTIME_FORMAT_FAMILY, 'IMA4', "Quicktime IMA4"},
|
||||
{CODEC_ID_MPEG4AAC, B_MEDIA_ENCODED_AUDIO, B_QUICKTIME_FORMAT_FAMILY, 'mp4a', "MPEG4 AAC"},
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, 'mp4v', "MPEG4 Video"},
|
||||
{CODEC_ID_MPEG4AAC, B_MEDIA_ENCODED_AUDIO, B_QUICKTIME_FORMAT_FAMILY, 'a4pm', "MPEG4 AAC"},
|
||||
@ -62,8 +63,8 @@ const struct codec_table gCodecTable[] = {
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
{CODEC_ID_MP2, B_MEDIA_ENCODED_AUDIO, B_WAV_FORMAT_FAMILY, 0x50, "MPEG Audio Layer 2"}, /* mpeg audio layer 2 */
|
||||
{CODEC_ID_MP2, B_MEDIA_ENCODED_AUDIO, B_WAV_FORMAT_FAMILY, 0x55, "MPEG Audio Layer 3"}, /* mpeg audio layer 3 */
|
||||
{CODEC_ID_MP2, B_MEDIA_ENCODED_AUDIO, B_WAV_FORMAT_FAMILY, 0x0050, "MPEG Audio Layer 2"}, /* mpeg audio layer 2 */
|
||||
{CODEC_ID_MP2, B_MEDIA_ENCODED_AUDIO, B_WAV_FORMAT_FAMILY, 0x0055, "MPEG Audio Layer 3"}, /* mpeg audio layer 3 */
|
||||
#endif
|
||||
|
||||
{CODEC_ID_WMAV1, B_MEDIA_ENCODED_AUDIO, B_WAV_FORMAT_FAMILY, 0x160, "MS WMA v1"},
|
||||
@ -95,6 +96,7 @@ const struct codec_table gCodecTable[] = {
|
||||
|
||||
{CODEC_ID_H264, B_MEDIA_ENCODED_VIDEO, B_AVI_FORMAT_FAMILY, 'h264', "H264"},
|
||||
{CODEC_ID_H264, B_MEDIA_ENCODED_VIDEO, B_AVI_FORMAT_FAMILY, 'H264', "H264"},
|
||||
{CODEC_ID_H264, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, 'avc1', "AVC"}, /* MPEG-4 AVC */
|
||||
|
||||
#ifdef HAS_PHOTO_JPEG
|
||||
{CODEC_ID_MJPEG, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, 'JPEG', "Photo-JPEG"},
|
||||
@ -116,7 +118,7 @@ const struct codec_table gCodecTable[] = {
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, '4PMF', "ffmpeg MPEG4"},
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, 'DIVX', "MPEG4"}, /* OpenDivX */ /* XXX: doesn't seem to work */
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, 'divx', "MPEG4"}, /* OpenDivX */
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, 'mp4v', "MPEG4"}, /* OpenDivX */
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, 'mp4v', "MPEG4"}, /* MPEG-4 ASP */
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_QUICKTIME_FORMAT_FAMILY, 'XVID', "XviD (MPEG4)"}, /* OpenDivX ??? XXX: test */
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_AVI_FORMAT_FAMILY, 'FMP4', "ffmpeg MPEG4"},
|
||||
{CODEC_ID_MPEG4, B_MEDIA_ENCODED_VIDEO, B_AVI_FORMAT_FAMILY, '4PMF', "ffmpeg MPEG4"},
|
||||
|
@ -55,7 +55,7 @@ gfx_convert_func resolve_colorspace(color_space colorSpace, PixelFormat pixelFor
|
||||
}
|
||||
}
|
||||
|
||||
if (pixelFormat == PIX_FMT_YUV420P) {
|
||||
if (pixelFormat == PIX_FMT_YUV420P || pixelFormat == PIX_FMT_YUVJ420P) {
|
||||
#if INCLUDE_MMX
|
||||
if (mmx) {
|
||||
TRACE("resolve_colorspace: gfx_conv_yuv420p_rgb32_mmx\n");
|
||||
@ -107,7 +107,7 @@ gfx_convert_func resolve_colorspace(color_space colorSpace, PixelFormat pixelFor
|
||||
}
|
||||
}
|
||||
|
||||
if (pixelFormat == PIX_FMT_YUV420P) {
|
||||
if (pixelFormat == PIX_FMT_YUV420P || pixelFormat == PIX_FMT_YUVJ420P) {
|
||||
#if INCLUDE_MMX
|
||||
if (mmx) {
|
||||
TRACE("resolve_colorspace: gfx_conv_yuv420p_ycbcr422_mmx\n");
|
||||
@ -147,6 +147,10 @@ const char *pixfmt_to_string(int p)
|
||||
switch(p) {
|
||||
case PIX_FMT_YUV420P:
|
||||
return "PIX_FMT_YUV420P";
|
||||
case PIX_FMT_YUVJ420P:
|
||||
return "PIX_FMT_YUVJ420P - YUV420P (Jpeg)";
|
||||
case PIX_FMT_YUVA420P:
|
||||
return "PIX_FMT_YUVA420P - YUV420P (Alpha)";
|
||||
case PIX_FMT_YUV422:
|
||||
return "PIX_FMT_YUV422";
|
||||
case PIX_FMT_RGB24:
|
||||
|
@ -20,11 +20,11 @@ StaticLibrary libavcodec.a :
|
||||
aac_parser.c
|
||||
aactab.c
|
||||
aasc.c
|
||||
# ac3.c
|
||||
# ac3_parser.c
|
||||
# ac3dec.c
|
||||
# ac3dec_data.c
|
||||
# ac3tab.c
|
||||
ac3.c
|
||||
ac3_parser.c
|
||||
ac3dec.c
|
||||
ac3dec_data.c
|
||||
ac3tab.c
|
||||
acelp_filters.c
|
||||
acelp_math.c
|
||||
acelp_pitch_delay.c
|
||||
@ -33,7 +33,7 @@ StaticLibrary libavcodec.a :
|
||||
adxdec.c
|
||||
alac.c
|
||||
allcodecs.c
|
||||
# apedec.c
|
||||
apedec.c
|
||||
asv1.c
|
||||
atrac3.c
|
||||
audioconvert.c
|
||||
@ -140,9 +140,9 @@ StaticLibrary libavcodec.a :
|
||||
mjpega_dump_header_bsf.c
|
||||
mjpegbdec.c
|
||||
mjpegdec.c
|
||||
# mlp.c
|
||||
# mlp_parser.c
|
||||
# mlpdec.c
|
||||
mlp.c
|
||||
mlp_parser.c
|
||||
mlpdec.c
|
||||
# mmvideo.c
|
||||
motion_est.c
|
||||
motionpixels.c
|
||||
@ -166,9 +166,9 @@ StaticLibrary libavcodec.a :
|
||||
msmpeg4.c
|
||||
msmpeg4data.c
|
||||
msrle.c
|
||||
# msvideo1.c
|
||||
# nellymoser.c
|
||||
# nellymoserdec.c
|
||||
msvideo1.c
|
||||
nellymoser.c
|
||||
nellymoserdec.c
|
||||
noise_bsf.c
|
||||
nuv.c
|
||||
opt.c
|
||||
@ -177,8 +177,8 @@ StaticLibrary libavcodec.a :
|
||||
pcx.c
|
||||
png.c
|
||||
# pngdec.c
|
||||
# pnm.c
|
||||
# pnm_parser.c
|
||||
pnm.c
|
||||
pnm_parser.c
|
||||
# pnmenc.c
|
||||
pthread.c
|
||||
ptx.c
|
||||
@ -197,67 +197,67 @@ StaticLibrary libavcodec.a :
|
||||
resample2.c
|
||||
rl2.c
|
||||
rle.c
|
||||
# roqaudioenc.c
|
||||
# roqvideo.c
|
||||
# roqvideodec.c
|
||||
roqaudioenc.c
|
||||
roqvideo.c
|
||||
roqvideodec.c
|
||||
# roqvideoenc.c
|
||||
rpza.c
|
||||
rtjpeg.c
|
||||
# rv10.c
|
||||
rv10.c
|
||||
# rv30.c
|
||||
# rv30dsp.c
|
||||
# rv34.c
|
||||
# rv40.c
|
||||
rv40.c
|
||||
s3tc.c
|
||||
sgidec.c
|
||||
shorten.c
|
||||
simple_idct.c
|
||||
# smacker.c
|
||||
smacker.c
|
||||
smc.c
|
||||
# snow.c
|
||||
sonic.c
|
||||
# sp5xdec.c
|
||||
sp5xdec.c
|
||||
# sunrast.c
|
||||
# svq1.c
|
||||
# svq1dec.c
|
||||
# svq3.c
|
||||
svq1.c
|
||||
svq1dec.c
|
||||
# svq3.c - Included by h264
|
||||
# targa.c
|
||||
# tiertexseqv.c
|
||||
# tiff.c
|
||||
# tiffenc.c
|
||||
# truemotion1.c
|
||||
# truemotion2.c
|
||||
# truespeech.c
|
||||
truemotion1.c
|
||||
truemotion2.c
|
||||
truespeech.c
|
||||
# tscc.c
|
||||
# tta.c
|
||||
# txd.c
|
||||
ulti.c
|
||||
utils.c
|
||||
vb.c
|
||||
# vc1.c
|
||||
# vc1_parser.c
|
||||
# vc1data.c
|
||||
# vc1dsp.c
|
||||
# vcr1.c
|
||||
# vmdav.c
|
||||
vc1.c
|
||||
vc1_parser.c
|
||||
vc1data.c
|
||||
vc1dsp.c
|
||||
vcr1.c
|
||||
vmdav.c
|
||||
# vmnc.c
|
||||
vorbis.c
|
||||
vorbis_data.c
|
||||
vorbis_dec.c
|
||||
# vp3.c
|
||||
# vp3_parser.c
|
||||
# vp3dsp.c
|
||||
# vp5.c
|
||||
# vp56.c
|
||||
# vp56data.c
|
||||
# vp6.c
|
||||
vp3.c
|
||||
vp3_parser.c
|
||||
vp3dsp.c
|
||||
vp5.c
|
||||
vp56.c
|
||||
vp56data.c
|
||||
vp6.c
|
||||
# vqavideo.c
|
||||
wavpack.c
|
||||
# wma.c
|
||||
# wmadec.c
|
||||
wma.c
|
||||
wmadec.c
|
||||
wmv2.c
|
||||
# wmv2dec.c
|
||||
# wnv1.c
|
||||
wmv2dec.c
|
||||
wnv1.c
|
||||
# ws-snd1.c
|
||||
# xan.c
|
||||
xiph.c
|
||||
|
@ -10,6 +10,14 @@
|
||||
#define CONFIG_MPEGAUDIO_HP 1
|
||||
#define CONFIG_HAVE_DLOPEN 1
|
||||
#define CONFIG_AUDIO_BEOS 1
|
||||
#define CONFIG_MP2_DECODER 1
|
||||
#define CONFIG_MP3_DECODER 1
|
||||
#define CONFIG_MP3ON4_DECODER 1
|
||||
#define CONFIG_MP3ADU_DECODER 1
|
||||
#define CONFIG_VC1_DECODER 1
|
||||
#define CONFIG_WMV2_DECODER 1
|
||||
#define CONFIG_WMV3_DECODER 1
|
||||
#define CONFIG_AC3_DECODER 1
|
||||
/* #define CONFIG_NETWORK 1 */
|
||||
/* #define CONFIG_ZLIB 1 */
|
||||
#define HAVE_MALLOC_H 1
|
||||
@ -153,8 +161,8 @@
|
||||
#define ENABLE_SP5X_DECODER 0
|
||||
#define ENABLE_SUNRAST_DECODER 0
|
||||
#define ENABLE_SVQ1_ENCODER 0
|
||||
#define ENABLE_SVQ1_DECODER 0
|
||||
#define ENABLE_SVQ3_DECODER 0
|
||||
#define ENABLE_SVQ1_DECODER 1
|
||||
#define ENABLE_SVQ3_DECODER 1
|
||||
#define ENABLE_TARGA_ENCODER 0
|
||||
#define ENABLE_TARGA_DECODER 0
|
||||
#define ENABLE_THEORA_DECODER 0
|
||||
@ -179,11 +187,11 @@
|
||||
#define ENABLE_VP6F_DECODER 0
|
||||
#define ENABLE_VQA_DECODER 0
|
||||
#define ENABLE_WMV1_ENCODER 0
|
||||
#define ENABLE_WMV1_DECODER 0
|
||||
#define ENABLE_WMV1_DECODER 1
|
||||
#define ENABLE_WMV2_ENCODER 0
|
||||
#define ENABLE_WMV2_DECODER 0
|
||||
#define ENABLE_WMV3_DECODER 0
|
||||
#define ENABLE_WNV1_DECODER 0
|
||||
#define ENABLE_WMV2_DECODER 1
|
||||
#define ENABLE_WMV3_DECODER 1
|
||||
#define ENABLE_WNV1_DECODER 1
|
||||
#define ENABLE_XAN_WC3_DECODER 0
|
||||
#define ENABLE_XL_DECODER 0
|
||||
#define ENABLE_XSUB_DECODER 0
|
||||
@ -193,7 +201,7 @@
|
||||
#define ENABLE_ZMBV_DECODER 0
|
||||
#define ENABLE_AAC_DECODER 1
|
||||
#define ENABLE_AC3_ENCODER 0
|
||||
#define ENABLE_AC3_DECODER 0
|
||||
#define ENABLE_AC3_DECODER 1
|
||||
#define ENABLE_ALAC_ENCODER 0
|
||||
#define ENABLE_ALAC_DECODER 1
|
||||
#define ENABLE_APE_DECODER 0
|
||||
@ -208,10 +216,10 @@
|
||||
#define ENABLE_MACE6_DECODER 1
|
||||
#define ENABLE_MLP_DECODER 0
|
||||
#define ENABLE_MP2_ENCODER 0
|
||||
#define ENABLE_MP2_DECODER 0
|
||||
#define ENABLE_MP3_DECODER 0
|
||||
#define ENABLE_MP3ADU_DECODER 0
|
||||
#define ENABLE_MP3ON4_DECODER 0
|
||||
#define ENABLE_MP2_DECODER 1
|
||||
#define ENABLE_MP3_DECODER 1
|
||||
#define ENABLE_MP3ADU_DECODER 1
|
||||
#define ENABLE_MP3ON4_DECODER 1
|
||||
#define ENABLE_MPC7_DECODER 1
|
||||
#define ENABLE_MPC8_DECODER 1
|
||||
#define ENABLE_NELLYMOSER_DECODER 0
|
||||
@ -353,7 +361,7 @@
|
||||
#define ENABLE_DVDSUB_PARSER 0
|
||||
#define ENABLE_H261_PARSER 0
|
||||
#define ENABLE_H263_PARSER 0
|
||||
#define ENABLE_H264_PARSER 0
|
||||
#define ENABLE_H264_PARSER 1
|
||||
#define ENABLE_MJPEG_PARSER 0
|
||||
#define ENABLE_MLP_PARSER 0
|
||||
#define ENABLE_MPEG4VIDEO_PARSER 0
|
||||
|
Loading…
Reference in New Issue
Block a user