Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
ffmpeg
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Stefan Westerfeld
ffmpeg
Commits
ff4d1aa8
Commit
ff4d1aa8
authored
Sep 01, 2014
by
Gabriel Dume
Committed by
Diego Biurrun
Sep 02, 2014
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
flv: K&R formatting cosmetics
Signed-off-by:
Diego Biurrun
<
diego@biurrun.de
>
parent
f61e47dd
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
56 additions
and
49 deletions
+56
-49
flv.h
libavcodec/flv.h
+5
-3
flvdec.c
libavcodec/flvdec.c
+9
-10
flvenc.c
libavcodec/flvenc.c
+42
-36
No files found.
libavcodec/flv.h
View file @
ff4d1aa8
/*
* FLV specific private header.
*
* This file is part of Libav.
*
* Libav is free software; you can redistribute it and/or
...
...
@@ -20,12 +21,13 @@
#ifndef AVCODEC_FLV_H
#define AVCODEC_FLV_H
#include "mpegvideo.h"
#include "get_bits.h"
#include "mpegvideo.h"
#include "put_bits.h"
void
ff_flv_encode_picture_header
(
MpegEncContext
*
s
,
int
picture_number
);
void
ff_flv2_encode_ac_esc
(
PutBitContext
*
pb
,
int
slevel
,
int
level
,
int
run
,
int
last
);
void
ff_flv_encode_picture_header
(
MpegEncContext
*
s
,
int
picture_number
);
void
ff_flv2_encode_ac_esc
(
PutBitContext
*
pb
,
int
slevel
,
int
level
,
int
run
,
int
last
);
int
ff_flv_decode_picture_header
(
MpegEncContext
*
s
);
void
ff_flv2_decode_ac_esc
(
GetBitContext
*
gb
,
int
*
level
,
int
*
run
,
int
*
last
);
...
...
libavcodec/flvdec.c
View file @
ff4d1aa8
/*
* FLV decoding.
*
* This file is part of Libav.
*
* Libav is free software; you can redistribute it and/or
...
...
@@ -17,21 +18,21 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "mpegvideo.h"
#include "h263.h"
#include "flv.h"
#include "libavutil/imgutils.h"
#include "flv.h"
#include "h263.h"
#include "mpegvideo.h"
void
ff_flv2_decode_ac_esc
(
GetBitContext
*
gb
,
int
*
level
,
int
*
run
,
int
*
last
)
{
int
is11
=
get_bits1
(
gb
);
*
last
=
get_bits1
(
gb
);
*
run
=
get_bits
(
gb
,
6
);
if
(
is11
)
{
if
(
is11
)
*
level
=
get_sbits
(
gb
,
11
);
}
else
{
else
*
level
=
get_sbits
(
gb
,
7
);
}
}
int
ff_flv_decode_picture_header
(
MpegEncContext
*
s
)
...
...
@@ -128,8 +129,6 @@ AVCodec ff_flv_decoder = {
.
close
=
ff_h263_decode_end
,
.
decode
=
ff_h263_decode_frame
,
.
capabilities
=
CODEC_CAP_DRAW_HORIZ_BAND
|
CODEC_CAP_DR1
,
.
pix_fmts
=
(
const
enum
AVPixelFormat
[])
{
AV_PIX_FMT_YUV420P
,
AV_PIX_FMT_NONE
},
.
pix_fmts
=
(
const
enum
AVPixelFormat
[])
{
AV_PIX_FMT_YUV420P
,
AV_PIX_FMT_NONE
},
};
libavcodec/flvenc.c
View file @
ff4d1aa8
/*
* FLV Encoding specific code.
*
* This file is part of Libav.
*
* Libav is free software; you can redistribute it and/or
...
...
@@ -17,58 +18,62 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "mpegvideo.h"
#include "h263.h"
#include "flv.h"
#include "h263.h"
#include "mpegvideo.h"
void
ff_flv_encode_picture_header
(
MpegEncContext
*
s
,
int
picture_number
)
void
ff_flv_encode_picture_header
(
MpegEncContext
*
s
,
int
picture_number
)
{
int
format
;
int
format
;
avpriv_align_put_bits
(
&
s
->
pb
);
avpriv_align_put_bits
(
&
s
->
pb
);
put_bits
(
&
s
->
pb
,
17
,
1
);
put_bits
(
&
s
->
pb
,
5
,
(
s
->
h263_flv
-
1
));
/* 0: h263 escape codes 1: 11-bit escape codes */
put_bits
(
&
s
->
pb
,
8
,
(((
int64_t
)
s
->
picture_number
*
30
*
s
->
avctx
->
time_base
.
num
)
/
//FIXME use timestamp
s
->
avctx
->
time_base
.
den
)
&
0xff
);
/* TemporalReference */
if
(
s
->
width
==
352
&&
s
->
height
==
288
)
put_bits
(
&
s
->
pb
,
17
,
1
);
/* 0: h263 escape codes 1: 11-bit escape codes */
put_bits
(
&
s
->
pb
,
5
,
(
s
->
h263_flv
-
1
));
put_bits
(
&
s
->
pb
,
8
,
(((
int64_t
)
s
->
picture_number
*
30
*
s
->
avctx
->
time_base
.
num
)
/
// FIXME use timestamp
s
->
avctx
->
time_base
.
den
)
&
0xff
);
/* TemporalReference */
if
(
s
->
width
==
352
&&
s
->
height
==
288
)
format
=
2
;
else
if
(
s
->
width
==
176
&&
s
->
height
==
144
)
else
if
(
s
->
width
==
176
&&
s
->
height
==
144
)
format
=
3
;
else
if
(
s
->
width
==
128
&&
s
->
height
==
96
)
else
if
(
s
->
width
==
128
&&
s
->
height
==
96
)
format
=
4
;
else
if
(
s
->
width
==
320
&&
s
->
height
==
240
)
else
if
(
s
->
width
==
320
&&
s
->
height
==
240
)
format
=
5
;
else
if
(
s
->
width
==
160
&&
s
->
height
==
120
)
else
if
(
s
->
width
==
160
&&
s
->
height
==
120
)
format
=
6
;
else
if
(
s
->
width
<=
255
&&
s
->
height
<=
255
)
format
=
0
;
/* use 1 byte width & height */
else
format
=
1
;
/* use 2 bytes width & height */
put_bits
(
&
s
->
pb
,
3
,
format
);
/* PictureSize */
if
(
format
==
0
)
{
else
if
(
s
->
width
<=
255
&&
s
->
height
<=
255
)
format
=
0
;
/* use 1 byte width & height */
else
format
=
1
;
/* use 2 bytes width & height */
put_bits
(
&
s
->
pb
,
3
,
format
);
/* PictureSize */
if
(
format
==
0
)
{
put_bits
(
&
s
->
pb
,
8
,
s
->
width
);
put_bits
(
&
s
->
pb
,
8
,
s
->
height
);
}
else
if
(
format
==
1
)
{
}
else
if
(
format
==
1
)
{
put_bits
(
&
s
->
pb
,
16
,
s
->
width
);
put_bits
(
&
s
->
pb
,
16
,
s
->
height
);
}
put_bits
(
&
s
->
pb
,
2
,
s
->
pict_type
==
AV_PICTURE_TYPE_P
);
/* PictureType */
put_bits
(
&
s
->
pb
,
1
,
1
);
/* DeblockingFlag: on */
put_bits
(
&
s
->
pb
,
5
,
s
->
qscale
);
/* Quantizer */
put_bits
(
&
s
->
pb
,
1
,
0
);
/* ExtraInformation */
}
put_bits
(
&
s
->
pb
,
2
,
s
->
pict_type
==
AV_PICTURE_TYPE_P
);
/* PictureType */
put_bits
(
&
s
->
pb
,
1
,
1
);
/* DeblockingFlag: on */
put_bits
(
&
s
->
pb
,
5
,
s
->
qscale
);
/* Quantizer */
put_bits
(
&
s
->
pb
,
1
,
0
);
/* ExtraInformation */
if
(
s
->
h263_aic
)
{
s
->
y_dc_scale_table
=
s
->
c_dc_scale_table
=
ff_aic_dc_scale_table
;
}
else
{
s
->
y_dc_scale_table
=
s
->
c_dc_scale_table
=
ff_mpeg1_dc_scale_table
;
}
if
(
s
->
h263_aic
)
{
s
->
y_dc_scale_table
=
s
->
c_dc_scale_table
=
ff_aic_dc_scale_table
;
}
else
{
s
->
y_dc_scale_table
=
s
->
c_dc_scale_table
=
ff_mpeg1_dc_scale_table
;
}
}
void
ff_flv2_encode_ac_esc
(
PutBitContext
*
pb
,
int
slevel
,
int
level
,
int
run
,
int
last
){
if
(
level
<
64
)
{
// 7-bit level
void
ff_flv2_encode_ac_esc
(
PutBitContext
*
pb
,
int
slevel
,
int
level
,
int
run
,
int
last
)
{
if
(
level
<
64
)
{
// 7-bit level
put_bits
(
pb
,
1
,
0
);
put_bits
(
pb
,
1
,
last
);
put_bits
(
pb
,
6
,
run
);
...
...
@@ -95,6 +100,7 @@ AVCodec ff_flv_encoder = {
.
init
=
ff_mpv_encode_init
,
.
encode2
=
ff_mpv_encode_picture
,
.
close
=
ff_mpv_encode_end
,
.
pix_fmts
=
(
const
enum
AVPixelFormat
[]){
AV_PIX_FMT_YUV420P
,
AV_PIX_FMT_NONE
},
.
pix_fmts
=
(
const
enum
AVPixelFormat
[])
{
AV_PIX_FMT_YUV420P
,
AV_PIX_FMT_NONE
},
.
priv_class
=
&
flv_class
,
};
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