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
feeb6cc0
Commit
feeb6cc0
authored
Jan 11, 2000
by
Jean-Marc Dressler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Le video parser compile mais n'est pas termine, n'est-ce pas stef ? ;)
parent
d5300df1
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
37 additions
and
41 deletions
+37
-41
src/video_parser/video_fifo.c
src/video_parser/video_fifo.c
+11
-37
src/video_parser/vpar_headers.c
src/video_parser/vpar_headers.c
+25
-4
src/video_parser/vpar_motion.c
src/video_parser/vpar_motion.c
+1
-0
No files found.
src/video_parser/video_fifo.c
View file @
feeb6cc0
...
@@ -133,24 +133,6 @@ void vpar_DecodeMacroblock( video_fifo_t * p_fifo, macroblock_t * p_mb )
...
@@ -133,24 +133,6 @@ void vpar_DecodeMacroblock( video_fifo_t * p_fifo, macroblock_t * p_mb )
*****************************************************************************/
*****************************************************************************/
void
vpar_ReleaseMacroblock
(
video_fifo_t
*
p_fifo
,
macroblock_t
*
p_mb
)
void
vpar_ReleaseMacroblock
(
video_fifo_t
*
p_fifo
,
macroblock_t
*
p_mb
)
{
{
/* Unlink referenced pictures */
if
(
p_mb
->
p_forw_top
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_forw_top
);
}
if
(
p_mb
->
p_backw_top
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_backw_top
);
}
if
(
p_mb
->
p_forw_bot
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_forw_bot
);
}
if
(
p_mb
->
p_backw_bot
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_backw_bot
);
}
/* Unlink picture buffer */
/* Unlink picture buffer */
vlc_mutex_lock
(
&
p_mb
->
p_picture
->
lock_deccount
);
vlc_mutex_lock
(
&
p_mb
->
p_picture
->
lock_deccount
);
p_mb
->
p_picture
->
i_deccount
--
;
p_mb
->
p_picture
->
i_deccount
--
;
...
@@ -161,7 +143,17 @@ void vpar_ReleaseMacroblock( video_fifo_t * p_fifo, macroblock_t * p_mb )
...
@@ -161,7 +143,17 @@ void vpar_ReleaseMacroblock( video_fifo_t * p_fifo, macroblock_t * p_mb )
/* Warn Synchro for its records. */
/* Warn Synchro for its records. */
vpar_SynchroEnd
(
p_fifo
->
p_vpar
);
vpar_SynchroEnd
(
p_fifo
->
p_vpar
);
}
/* Unlink referenced pictures */
if
(
p_mb
->
p_forward
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_forward
);
}
if
(
p_mb
->
p_backward
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_backward
);
}
}
vlc_mutex_unlock
(
&
p_mb
->
p_picture
->
lock_deccount
);
vlc_mutex_unlock
(
&
p_mb
->
p_picture
->
lock_deccount
);
/* Release the macroblock_t structure */
/* Release the macroblock_t structure */
...
@@ -177,24 +169,6 @@ void vpar_ReleaseMacroblock( video_fifo_t * p_fifo, macroblock_t * p_mb )
...
@@ -177,24 +169,6 @@ void vpar_ReleaseMacroblock( video_fifo_t * p_fifo, macroblock_t * p_mb )
*****************************************************************************/
*****************************************************************************/
void
vpar_DestroyMacroblock
(
video_fifo_t
*
p_fifo
,
macroblock_t
*
p_mb
)
void
vpar_DestroyMacroblock
(
video_fifo_t
*
p_fifo
,
macroblock_t
*
p_mb
)
{
{
/* Unlink referenced pictures */
if
(
p_mb
->
p_forw_top
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_forw_top
);
}
if
(
p_mb
->
p_backw_top
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_backw_top
);
}
if
(
p_mb
->
p_forw_bot
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_forw_bot
);
}
if
(
p_mb
->
p_backw_bot
!=
NULL
)
{
vout_UnlinkPicture
(
p_fifo
->
p_vpar
->
p_vout
,
p_mb
->
p_backw_bot
);
}
/* Release the macroblock_t structure */
/* Release the macroblock_t structure */
#define P_buffer p_fifo->p_vpar->vbuffer
#define P_buffer p_fifo->p_vpar->vbuffer
vlc_mutex_lock
(
&
P_buffer
.
lock
);
vlc_mutex_lock
(
&
P_buffer
.
lock
);
...
...
src/video_parser/vpar_headers.c
View file @
feeb6cc0
...
@@ -652,10 +652,10 @@ static void PictureHeader( vpar_thread_t * p_vpar )
...
@@ -652,10 +652,10 @@ static void PictureHeader( vpar_thread_t * p_vpar )
{
{
/* This is a new frame. Get a structure from the video_output. */
/* This is a new frame. Get a structure from the video_output. */
P_picture
=
vout_CreatePicture
(
p_vpar
->
p_vout
,
P_picture
=
vout_CreatePicture
(
p_vpar
->
p_vout
,
SPLITTED_YUV_PICTURE
,
99
+
p_vpar
->
sequence
.
i_chroma_format
,
/*???*/
p_vpar
->
sequence
.
i_width
,
p_vpar
->
sequence
.
i_width
,
p_vpar
->
sequence
.
i_height
,
p_vpar
->
sequence
.
i_height
,
p_vpar
->
sequence
.
i_
chroma_format
);
p_vpar
->
sequence
.
i_
width
*
sizeof
(
yuv_data_t
)
);
/* Initialize values. */
/* Initialize values. */
P_picture
->
date
=
vpar_SynchroDecode
(
p_vpar
,
P_picture
->
date
=
vpar_SynchroDecode
(
p_vpar
,
...
@@ -710,7 +710,18 @@ static void PictureHeader( vpar_thread_t * p_vpar )
...
@@ -710,7 +710,18 @@ static void PictureHeader( vpar_thread_t * p_vpar )
/* Decode slice data. */
/* Decode slice data. */
SliceHeader
(
p_vpar
,
&
i_mb_address
,
i_mb_base
,
i_dummy
&
255
);
SliceHeader
(
p_vpar
,
&
i_mb_address
,
i_mb_base
,
i_dummy
&
255
);
}
}
/* Link referenced pictures for the decoder
* They are unlinked in vpar_ReleaseMacroblock() & vpar_DestroyMacroblock() */
if
(
p_vpar
->
sequence
.
p_forward
!=
NULL
)
{
vout_LinkPicture
(
p_vpar
->
p_vout
,
p_vpar
->
sequence
.
p_forward
);
}
if
(
p_vpar
->
sequence
.
p_backward
!=
NULL
)
{
vout_LinkPicture
(
p_vpar
->
p_vout
,
p_vpar
->
sequence
.
p_backward
);
}
if
(
p_vpar
->
picture
.
b_error
)
if
(
p_vpar
->
picture
.
b_error
)
{
{
/* Trash picture. */
/* Trash picture. */
...
@@ -722,13 +733,23 @@ static void PictureHeader( vpar_thread_t * p_vpar )
...
@@ -722,13 +733,23 @@ static void PictureHeader( vpar_thread_t * p_vpar )
ReferenceReplace
(
p_vpar
,
p_vpar
->
picture
.
i_coding_type
,
NULL
);
ReferenceReplace
(
p_vpar
,
p_vpar
->
picture
.
i_coding_type
,
NULL
);
vout_DestroyPicture
(
p_vpar
->
p_vout
,
P_picture
);
vout_DestroyPicture
(
p_vpar
->
p_vout
,
P_picture
);
/* Unlink referenced pictures */
if
(
p_vpar
->
sequence
.
p_forward
!=
NULL
)
{
vout_UnlinkPicture
(
p_vpar
->
p_vout
,
p_vpar
->
sequence
.
p_forward
);
}
if
(
p_vpar
->
sequence
.
p_backward
!=
NULL
)
{
vout_UnlinkPicture
(
p_vpar
->
p_vout
,
p_vpar
->
sequence
.
p_backward
);
}
/* Prepare context for the next picture. */
/* Prepare context for the next picture. */
P_picture
=
NULL
;
P_picture
=
NULL
;
}
}
else
if
(
p_vpar
->
picture
.
i_current_structure
==
FRAME_STRUCTURE
)
else
if
(
p_vpar
->
picture
.
i_current_structure
==
FRAME_STRUCTURE
)
{
{
/* Frame completely parsed. */
/* Frame completely parsed. */
P_picture
.
i_deccount
=
p_vpar
->
sequence
.
i_mb_size
;
P_picture
->
i_deccount
=
p_vpar
->
sequence
.
i_mb_size
;
for
(
i_mb
=
0
;
i_mb
<
p_vpar
->
sequence
.
i_mb_size
;
i_mb
++
)
for
(
i_mb
=
0
;
i_mb
<
p_vpar
->
sequence
.
i_mb_size
;
i_mb
++
)
{
{
vpar_DecodeMacroblock
(
&
p_vpar
->
vfifo
,
p_vpar
->
picture
.
pp_mb
[
i_mb
]
);
vpar_DecodeMacroblock
(
&
p_vpar
->
vfifo
,
p_vpar
->
picture
.
pp_mb
[
i_mb
]
);
...
...
src/video_parser/vpar_motion.c
View file @
feeb6cc0
...
@@ -86,6 +86,7 @@ static __inline__ int vpar_MotionCode( vpar_thread_t * p_vpar )
...
@@ -86,6 +86,7 @@ static __inline__ int vpar_MotionCode( vpar_thread_t * p_vpar )
if
(
(
i_code
-=
12
)
<
0
)
if
(
(
i_code
-=
12
)
<
0
)
{
{
p_vpar
->
picture
.
b_error
=
1
;
intf_DbgMsg
(
"vpar debug: Invalid motion_vector code
\n
"
);
intf_DbgMsg
(
"vpar debug: Invalid motion_vector code
\n
"
);
return
0
;
return
0
;
}
}
...
...
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