Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
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
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
7bc70930
Commit
7bc70930
authored
Sep 17, 2012
by
Clément Bœsch
Committed by
Clément Bœsch
Sep 21, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lavf/movenc: add F4V flavor.
parent
406cdddb
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
35 additions
and
0 deletions
+35
-0
Changelog
Changelog
+1
-0
configure
configure
+1
-0
allformats.c
libavformat/allformats.c
+1
-0
movenc.c
libavformat/movenc.c
+31
-0
movenc.h
libavformat/movenc.h
+1
-0
No files found.
Changelog
View file @
7bc70930
...
...
@@ -61,6 +61,7 @@ version next:
- decimate filter ported from MPlayer
- RTP depacketization of JPEG
- Smooth Streaming live segmenter muxer
- F4V muxer
version 0.11:
...
...
configure
View file @
7bc70930
...
...
@@ -1793,6 +1793,7 @@ asf_stream_muxer_select="asf_muxer"
avisynth_demuxer_deps
=
"avisynth"
dirac_demuxer_select
=
"dirac_parser"
eac3_demuxer_select
=
"ac3_parser"
f4v_muxer_select
=
"mov_muxer"
flac_demuxer_select
=
"flac_parser"
ipod_muxer_select
=
"mov_muxer"
libnut_demuxer_deps
=
"libnut"
...
...
libavformat/allformats.c
View file @
7bc70930
...
...
@@ -93,6 +93,7 @@ void av_register_all(void)
REGISTER_DEMUXER
(
EA
,
ea
);
REGISTER_DEMUXER
(
EA_CDATA
,
ea_cdata
);
REGISTER_MUXDEMUX
(
EAC3
,
eac3
);
REGISTER_MUXER
(
F4V
,
f4v
);
REGISTER_MUXDEMUX
(
FFM
,
ffm
);
REGISTER_MUXDEMUX
(
FFMETADATA
,
ffmetadata
);
REGISTER_MUXDEMUX
(
FILMSTRIP
,
filmstrip
);
...
...
libavformat/movenc.c
View file @
7bc70930
...
...
@@ -933,6 +933,14 @@ static const AVCodecTag codec_3gp_tags[] = {
{
AV_CODEC_ID_NONE
,
0
},
};
static
const
AVCodecTag
codec_f4v_tags
[]
=
{
// XXX: add GIF/PNG/JPEG?
{
AV_CODEC_ID_MP3
,
MKTAG
(
'.'
,
'm'
,
'p'
,
'3'
)
},
{
AV_CODEC_ID_AAC
,
MKTAG
(
'm'
,
'p'
,
'4'
,
'a'
)
},
{
AV_CODEC_ID_H264
,
MKTAG
(
'a'
,
'v'
,
'c'
,
'1'
)
},
{
AV_CODEC_ID_VP6F
,
MKTAG
(
'V'
,
'P'
,
'6'
,
'F'
)
},
{
AV_CODEC_ID_NONE
,
0
},
};
static
int
mov_find_codec_tag
(
AVFormatContext
*
s
,
MOVTrack
*
track
)
{
int
tag
;
...
...
@@ -947,6 +955,8 @@ static int mov_find_codec_tag(AVFormatContext *s, MOVTrack *track)
tag
=
ipod_get_codec_tag
(
s
,
track
);
else
if
(
track
->
mode
&
MODE_3GP
)
tag
=
ff_codec_get_tag
(
codec_3gp_tags
,
track
->
enc
->
codec_id
);
else
if
(
track
->
mode
&
MODE_F4V
)
tag
=
ff_codec_get_tag
(
codec_f4v_tags
,
track
->
enc
->
codec_id
);
else
tag
=
mov_get_codec_tag
(
s
,
track
);
...
...
@@ -2697,6 +2707,8 @@ static int mov_write_ftyp_tag(AVIOContext *pb, AVFormatContext *s)
ffio_wfourcc
(
pb
,
has_video
?
"M4V "
:
"M4A "
);
else
if
(
mov
->
mode
==
MODE_ISM
)
ffio_wfourcc
(
pb
,
"isml"
);
else
if
(
mov
->
mode
==
MODE_F4V
)
ffio_wfourcc
(
pb
,
"f4v "
);
else
ffio_wfourcc
(
pb
,
"qt "
);
...
...
@@ -3388,6 +3400,7 @@ static int mov_write_header(AVFormatContext *s)
else
if
(
!
strcmp
(
"psp"
,
s
->
oformat
->
name
))
mov
->
mode
=
MODE_PSP
;
else
if
(
!
strcmp
(
"ipod"
,
s
->
oformat
->
name
))
mov
->
mode
=
MODE_IPOD
;
else
if
(
!
strcmp
(
"ismv"
,
s
->
oformat
->
name
))
mov
->
mode
=
MODE_ISM
;
else
if
(
!
strcmp
(
"f4v"
,
s
->
oformat
->
name
))
mov
->
mode
=
MODE_F4V
;
mov_write_ftyp_tag
(
pb
,
s
);
if
(
mov
->
mode
==
MODE_PSP
)
{
...
...
@@ -3814,3 +3827,21 @@ AVOutputFormat ff_ismv_muxer = {
.
priv_class
=
&
ismv_muxer_class
,
};
#endif
#if CONFIG_F4V_MUXER
MOV_CLASS
(
f4v
)
AVOutputFormat
ff_f4v_muxer
=
{
.
name
=
"f4v"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"F4V Adobe Flash Video"
),
.
mime_type
=
"application/f4v"
,
.
extensions
=
"f4v"
,
.
priv_data_size
=
sizeof
(
MOVMuxContext
),
.
audio_codec
=
AV_CODEC_ID_AAC
,
.
video_codec
=
AV_CODEC_ID_H264
,
.
write_header
=
mov_write_header
,
.
write_packet
=
mov_write_packet
,
.
write_trailer
=
mov_write_trailer
,
.
flags
=
AVFMT_GLOBALHEADER
|
AVFMT_ALLOW_FLUSH
,
.
codec_tag
=
(
const
AVCodecTag
*
const
[]){
codec_f4v_tags
,
0
},
.
priv_class
=
&
f4v_muxer_class
,
};
#endif
libavformat/movenc.h
View file @
7bc70930
...
...
@@ -39,6 +39,7 @@
#define MODE_3G2 0x10
#define MODE_IPOD 0x20
#define MODE_ISM 0x40
#define MODE_F4V 0x80
typedef
struct
MOVIentry
{
uint64_t
pos
;
...
...
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