Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-1.1
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-1.1
Commits
7b3ed3ad
Commit
7b3ed3ad
authored
Jan 21, 2001
by
Christophe Massiot
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* Various miscellaneous minor optimizations of the video parser.
parent
95ef185a
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
392 additions
and
499 deletions
+392
-499
include/input_ext-dec.h
include/input_ext-dec.h
+6
-6
include/vpar_blocks.h
include/vpar_blocks.h
+26
-2
src/video_decoder/video_parser.h
src/video_decoder/video_parser.h
+3
-2
src/video_parser/vpar_blocks.c
src/video_parser/vpar_blocks.c
+293
-486
src/video_parser/vpar_headers.c
src/video_parser/vpar_headers.c
+64
-3
No files found.
include/input_ext-dec.h
View file @
7b3ed3ad
...
...
@@ -2,7 +2,7 @@
* input_ext-dec.h: structures exported to the VideoLAN decoders
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
* $Id: input_ext-dec.h,v 1.1
7 2001/01/20 13:08:33 sam
Exp $
* $Id: input_ext-dec.h,v 1.1
8 2001/01/21 01:36:25 massiot
Exp $
*
* Authors:
*
...
...
@@ -135,6 +135,11 @@ typedef struct bit_fifo_s
*****************************************************************************/
typedef
struct
bit_stream_s
{
/*
* Bit structures
*/
bit_fifo_t
fifo
;
/*
* Input structures
*/
...
...
@@ -160,11 +165,6 @@ typedef struct bit_stream_s
byte_t
*
p_byte
;
/* Pointer to the last byte that is to be read (in the current TS packet */
byte_t
*
p_end
;
/*
* Bit structures
*/
bit_fifo_t
fifo
;
}
bit_stream_t
;
/*****************************************************************************
...
...
include/vpar_blocks.h
View file @
7b3ed3ad
...
...
@@ -2,7 +2,7 @@
* vpar_blocks.h : video parser blocks management
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
* $Id: vpar_blocks.h,v 1.3
2 2001/01/18 05:13:22 sam
Exp $
* $Id: vpar_blocks.h,v 1.3
3 2001/01/21 01:36:25 massiot
Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
* Jean-Marc Dressler <polux@via.ecp.fr>
...
...
@@ -172,4 +172,28 @@ void vpar_InitBMBType( struct vpar_thread_s * p_vpar );
void
vpar_InitCodedPattern
(
struct
vpar_thread_s
*
p_vpar
);
void
vpar_InitDCTTables
(
struct
vpar_thread_s
*
p_vpar
);
void
vpar_InitScanTable
(
struct
vpar_thread_s
*
p_vpar
);
void
vpar_PictureData
(
struct
vpar_thread_s
*
p_vpar
,
int
i_mb_base
);
typedef
void
(
*
f_picture_data_t
)(
struct
vpar_thread_s
*
p_vpar
,
int
i_mb_base
);
#define PROTO_PICD( FUNCNAME ) \
void FUNCNAME( struct vpar_thread_s * p_vpar, int i_mb_base );
PROTO_PICD
(
vpar_PictureDataGENERIC
)
#if (VPAR_OPTIM_LEVEL > 0)
PROTO_PICD
(
vpar_PictureData1I
)
PROTO_PICD
(
vpar_PictureData1P
)
PROTO_PICD
(
vpar_PictureData1B
)
PROTO_PICD
(
vpar_PictureData1D
)
PROTO_PICD
(
vpar_PictureData2IF
)
PROTO_PICD
(
vpar_PictureData2PF
)
PROTO_PICD
(
vpar_PictureData2BF
)
#endif
#if (VPAR_OPTIM_LEVEL > 1)
PROTO_PICD
(
vpar_PictureData2IT
)
PROTO_PICD
(
vpar_PictureData2PT
)
PROTO_PICD
(
vpar_PictureData2BT
)
PROTO_PICD
(
vpar_PictureData2IB
)
PROTO_PICD
(
vpar_PictureData2PB
)
PROTO_PICD
(
vpar_PictureData2BB
)
#endif
src/video_decoder/video_parser.h
View file @
7b3ed3ad
...
...
@@ -2,7 +2,7 @@
* video_parser.h : video parser thread
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
* $Id: video_parser.h,v 1.
6 2001/01/18 05:13:23 sam
Exp $
* $Id: video_parser.h,v 1.
7 2001/01/21 01:36:25 massiot
Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
*
...
...
@@ -83,6 +83,8 @@ typedef struct video_buffer_s
*****************************************************************************/
typedef
struct
vpar_thread_s
{
bit_stream_t
bit_stream
;
/* Thread properties and locks */
vlc_thread_t
thread_id
;
/* id for thread functions */
...
...
@@ -93,7 +95,6 @@ typedef struct vpar_thread_s
/* Input properties */
decoder_fifo_t
*
p_fifo
;
/* PES input fifo */
bit_stream_t
bit_stream
;
vdec_config_t
*
p_config
;
/* Output properties */
...
...
src/video_parser/vpar_blocks.c
View file @
7b3ed3ad
This diff is collapsed.
Click to expand it.
src/video_parser/vpar_headers.c
View file @
7b3ed3ad
...
...
@@ -2,7 +2,7 @@
* vpar_headers.c : headers parsing
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
* $Id: vpar_headers.c,v 1.7
4 2001/01/18 05:13:23 sam
Exp $
* $Id: vpar_headers.c,v 1.7
5 2001/01/21 01:36:26 massiot
Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
* Stphane Borel <stef@via.ecp.fr>
...
...
@@ -572,7 +572,7 @@ static void PictureHeader( vpar_thread_t * p_vpar )
p_vpar
->
picture
.
i_current_structure
=
0
;
intf_
DbgMsg
(
"vpar debug: odd number of field picture
."
);
intf_
ErrMsg
(
"vpar error: odd number of field pictures
."
);
}
/* Do we have the reference pictures ? */
...
...
@@ -737,7 +737,68 @@ static void PictureHeader( vpar_thread_t * p_vpar )
/* Extension and User data. */
ExtensionAndUserData
(
p_vpar
);
vpar_PictureData
(
p_vpar
,
i_mb_base
);
/* This is an MP@ML decoder, please note that neither of the following
* assertions can be true :
* p_vpar->sequence.i_chroma_format != CHROMA_420
* p_vpar->sequence.i_height > 2800
* p_vpar->sequence.i_scalable_mode == SC_DP
* Be cautious if you try to use the decoder for other profiles and
* levels.
*/
if
(
p_vpar
->
sequence
.
b_mpeg2
)
{
static
f_picture_data_t
ppf_picture_data
[
4
][
4
]
=
{
{
NULL
,
NULL
,
NULL
,
NULL
},
{
/* TOP_FIELD */
#if (VPAR_OPTIM_LEVEL > 1)
NULL
,
vpar_PictureData2IT
,
vpar_PictureData2PT
,
vpar_PictureData2BT
#else
NULL
,
vpar_PictureDataGENERIC
,
vpar_PictureDataGENERIC
,
vpar_PictureDataGENERIC
#endif
},
{
/* BOTTOM_FIELD */
#if (VPAR_OPTIM_LEVEL > 1)
NULL
,
vpar_PictureData2IB
,
vpar_PictureData2PB
,
vpar_PictureData2BB
#else
NULL
,
vpar_PictureDataGENERIC
,
vpar_PictureDataGENERIC
,
vpar_PictureDataGENERIC
#endif
},
{
/* FRAME_PICTURE */
#if (VPAR_OPTIM_LEVEL > 0)
NULL
,
vpar_PictureData2IF
,
vpar_PictureData2PF
,
vpar_PictureData2BF
#else
NULL
,
vpar_PictureDataGENERIC
,
vpar_PictureDataGENERIC
,
vpar_PictureDataGENERIC
#endif
}
};
ppf_picture_data
[
p_vpar
->
picture
.
i_structure
]
[
p_vpar
->
picture
.
i_coding_type
](
p_vpar
,
i_mb_base
);
}
else
{
#if (VPAR_OPTIM_LEVEL > 0)
static
f_picture_data_t
pf_picture_data
[
5
]
=
{
NULL
,
vpar_PictureData1I
,
vpar_PictureData1P
,
vpar_PictureData1B
,
vpar_PictureData1D
};
pf_picture_data
[
p_vpar
->
picture
.
i_coding_type
](
p_vpar
,
i_mb_base
);
#else
vpar_PictureDataGENERIC
(
p_vpar
,
i_mb_base
);
#endif
}
if
(
p_vpar
->
p_fifo
->
b_die
||
p_vpar
->
p_fifo
->
b_error
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment