diff options
Diffstat (limited to 'libmpdemux/demux_lmlm4.c')
-rw-r--r-- | libmpdemux/demux_lmlm4.c | 64 |
1 files changed, 32 insertions, 32 deletions
diff --git a/libmpdemux/demux_lmlm4.c b/libmpdemux/demux_lmlm4.c index 9bd770adf3..c091fd1ba0 100644 --- a/libmpdemux/demux_lmlm4.c +++ b/libmpdemux/demux_lmlm4.c @@ -58,11 +58,11 @@ typedef struct FrameInfo /* // codes in MSB first -static unsigned int start_code [] = +static unsigned int start_code [] = { - 0xB0010000, // VISUAL_OBJECT_SEQUENCE_START_CODE - 0xB6010000, // VOP_START_CODE - 0x04C4FDFF, // MPEG1LAYERII_START_CODE + 0xB0010000, // VISUAL_OBJECT_SEQUENCE_START_CODE + 0xB6010000, // VOP_START_CODE + 0x04C4FDFF, // MPEG1LAYERII_START_CODE 0x00000000 // end of start codes list }; */ @@ -70,7 +70,7 @@ static unsigned int start_code [] = static int imeHeaderValid(FrameInfo *frame) { if ( frame->channelNo > 7 || - frame->frameSize > MAX_PACKET_SIZE || frame->frameSize <= 0) + frame->frameSize > MAX_PACKET_SIZE || frame->frameSize <= 0) { mp_msg(MSGT_DEMUX, MSGL_V, "Invalid packet in LMLM4 stream: ch=%d size=%d\n", frame->channelNo, frame->frameSize); return 0; @@ -78,11 +78,11 @@ static int imeHeaderValid(FrameInfo *frame) switch (frame->frameType) { case FRAMETYPE_I: case FRAMETYPE_P: - case FRAMETYPE_B: + case FRAMETYPE_B: case FRAMETYPE_AUDIO_MPEG1L2: case FRAMETYPE_AUDIO_ULAW: case FRAMETYPE_AUDIO_ADPCM: - break; + break; default: mp_msg(MSGT_DEMUX, MSGL_V, "Invalid packet in LMLM4 stream (wrong packet type %d)\n", frame->frameType); return 0; @@ -104,17 +104,17 @@ int searchMPEG4Stream(demuxer_t* demuxer, IME6400Header *imeHeader) imeHeaderSwap(imeHeader); memcpy(data + imeHeaderSize, imeHeader, imeHeaderSize); - + // printHex(data + imeHeaderSize, imeHeaderSize); - while ((errNo = stream_read(demuxer->stream, data + imeHeaderSize * 2 , imeHeaderSize)) == imeHeaderSize) + while ((errNo = stream_read(demuxer->stream, data + imeHeaderSize * 2 , imeHeaderSize)) == imeHeaderSize) { // printHex(data + imeHeaderSize * 2, imeHeaderSize); pos = stream_tell(demuxer->stream); while (dataSize - ptr >= STREAM_START_CODE_SIZE) { startCodeNo = 0; - while (start_code[startCodeNo]) + while (start_code[startCodeNo]) { if (memcmp(&start_code[startCodeNo], data + ptr, STREAM_START_CODE_SIZE) == 0) // start code match { @@ -157,11 +157,11 @@ static int getFrame(demuxer_t *demuxer, FrameInfo *frameInfo) frameInfo->paddingSize = (packetSize & PACKET_BLOCK_LAST) ? PACKET_BLOCK_SIZE - (packetSize & PACKET_BLOCK_LAST) : 0; mp_msg(MSGT_DEMUX, MSGL_DBG2, "typ: %d chan: %d size: %d pad: %d\n", - frameInfo->frameType, - frameInfo->channelNo, - frameInfo->frameSize, - frameInfo->paddingSize); - + frameInfo->frameType, + frameInfo->channelNo, + frameInfo->frameSize, + frameInfo->paddingSize); + if(!imeHeaderValid(frameInfo)){ // skip this packet stream_skip(demuxer->stream,PACKET_BLOCK_SIZE-8); @@ -171,14 +171,14 @@ static int getFrame(demuxer_t *demuxer, FrameInfo *frameInfo) return 1; } - + static int lmlm4_check_file(demuxer_t* demuxer) { FrameInfo frameInfo; unsigned int first; - + mp_msg(MSGT_DEMUX, MSGL_V, "Checking for LMLM4 Stream Format\n"); - + if(getFrame(demuxer, &frameInfo)!=1){ stream_skip(demuxer->stream,-8); mp_msg(MSGT_DEMUX, MSGL_V, "LMLM4 Stream Format not found\n"); @@ -186,16 +186,16 @@ static int lmlm4_check_file(demuxer_t* demuxer) } first=stream_read_dword(demuxer->stream); stream_skip(demuxer->stream,-12); - + mp_msg(MSGT_DEMUXER,MSGL_V,"LMLM4: first=0x%08X\n",first); - + switch(frameInfo.frameType){ case FRAMETYPE_AUDIO_MPEG1L2: if( (first & 0xffe00000) != 0xffe00000 ){ mp_msg(MSGT_DEMUXER,MSGL_V,"LMLM4: not mpeg audio\n"); return 0; } - if((4-((first>>17)&3))!=2){ + if((4-((first>>17)&3))!=2){ mp_msg(MSGT_DEMUXER,MSGL_V,"LMLM4: not layer-2\n"); return 0; } @@ -231,16 +231,16 @@ static int demux_lmlm4_fill_buffer(demuxer_t *demux, demux_stream_t *ds) //hdr: demux->filepos = stream_tell(demux->stream); mp_msg(MSGT_DEMUX, MSGL_DBG2, "fpos = %"PRId64"\n", (int64_t)demux->filepos); - + ret=getFrame(demux, &frameInfo); if(ret<=0) return ret; // EOF/error - + pts=demux->video->sh ? frames*((sh_video_t*)(demux->video->sh))->frametime : 0; - + switch(frameInfo.frameType){ case FRAMETYPE_AUDIO_MPEG1L2: mp_dbg(MSGT_DEMUX, MSGL_DBG2, "Audio Packet\n"); - if (!video) + if (!video) { stream_skip(demux->stream, frameInfo.frameSize + frameInfo.paddingSize); mp_msg(MSGT_DEMUX, MSGL_V, "Skip Audio Packet\n"); @@ -265,7 +265,7 @@ static int demux_lmlm4_fill_buffer(demuxer_t *demux, demux_stream_t *ds) } case FRAMETYPE_P: frames=(frames+1)&(1024*1024-1); // wrap around at 4 hrs to avoid inaccurate float calculations - if (!video) + if (!video) { stream_skip(demux->stream, frameInfo.frameSize + frameInfo.paddingSize); mp_msg(MSGT_DEMUX, MSGL_V, "Skip Video P Packet\n"); @@ -285,7 +285,7 @@ static int demux_lmlm4_fill_buffer(demuxer_t *demux, demux_stream_t *ds) default: stream_skip(demux->stream,frameInfo.frameSize); } - + stream_skip(demux->stream, frameInfo.paddingSize); return 1; @@ -300,7 +300,7 @@ static demuxer_t* demux_open_lmlm4(demuxer_t* demuxer){ sh_audio_t* sh_audio; unsigned int htype = 0, hleng; int i = 0; - + sh_video = new_sh_video(demuxer, 0); demuxer->video->sh = sh_video; sh_video->ds = demuxer->video; @@ -319,7 +319,7 @@ static demuxer_t* demux_open_lmlm4(demuxer_t* demuxer){ sh_video->bih->biBitCount = 16; sh_video->bih->biCompression = sh_video->format; sh_video->bih->biSizeImage = sh_video->disp_w*sh_video->disp_h; - + sh_audio = new_sh_audio(demuxer, 0); demuxer->audio->sh = sh_audio; sh_audio->ds = demuxer->audio; @@ -342,7 +342,7 @@ static demuxer_t* demux_open_lmlm4(demuxer_t* demuxer){ #endif demuxer->seekable = 0; - + if(!ds_fill_buffer(demuxer->video)){ mp_tmsg(MSGT_DEMUXER,MSGL_INFO,"LMLM4: " "No video stream found.\n"); demuxer->video->sh=NULL; @@ -356,8 +356,8 @@ static demuxer_t* demux_open_lmlm4(demuxer_t* demuxer){ } else { sh_audio=demuxer->audio->sh;sh_audio->ds=demuxer->audio; } - } - + } + return demuxer; } |