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
380cfce2
Commit
380cfce2
authored
Apr 16, 2013
by
Clément Bœsch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lavc: add AV_CODEC_PROP_TEXT_SUB.
CC are not marked. Also allow potential mixed types later.
parent
6189ff36
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
27 additions
and
2 deletions
+27
-2
APIchanges
doc/APIchanges
+3
-0
avcodec.h
libavcodec/avcodec.h
+6
-0
codec_desc.c
libavcodec/codec_desc.c
+16
-0
version.h
libavcodec/version.h
+1
-1
vf_subtitles.c
libavfilter/vf_subtitles.c
+1
-1
No files found.
doc/APIchanges
View file @
380cfce2
...
...
@@ -15,6 +15,9 @@ libavutil: 2012-10-22
API changes, most recent first:
2013-04-19 - xxxxxxx - lavc 55.4.100
Add AV_CODEC_PROP_TEXT_SUB property for text based subtitles codec.
2013-04-18 - xxxxxxx - lavf 55.3.100
The matroska demuxer can now output proper verbatim ASS packets. It will
become the default starting lavf 56.0.100.
...
...
libavcodec/avcodec.h
View file @
380cfce2
...
...
@@ -541,8 +541,14 @@ typedef struct AVCodecDescriptor {
#define AV_CODEC_PROP_LOSSLESS (1 << 2)
/**
* Subtitle codec is bitmap based
* Decoded AVSubtitle data can be read from the AVSubtitleRect->pict field.
*/
#define AV_CODEC_PROP_BITMAP_SUB (1 << 16)
/**
* Subtitle codec is text based.
* Decoded AVSubtitle data can be read from the AVSubtitleRect->ass field.
*/
#define AV_CODEC_PROP_TEXT_SUB (1 << 17)
/**
* @ingroup lavc_decoding
...
...
libavcodec/codec_desc.c
View file @
380cfce2
...
...
@@ -2394,6 +2394,7 @@ static const AVCodecDescriptor codec_descriptors[] = {
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"text"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"raw UTF-8 text"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_XSUB
,
...
...
@@ -2407,18 +2408,21 @@ static const AVCodecDescriptor codec_descriptors[] = {
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"ass"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"ASS (Advanced SSA) subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_SSA
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"ssa"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"SSA (SubStation Alpha) subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_MOV_TEXT
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"mov_text"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"MOV text"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_HDMV_PGS_SUBTITLE
,
...
...
@@ -2438,24 +2442,28 @@ static const AVCodecDescriptor codec_descriptors[] = {
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"srt"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"SubRip subtitle with embedded timing"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_SUBRIP
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"subrip"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"SubRip subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_MICRODVD
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"microdvd"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"MicroDVD subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_MPL2
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"mpl2"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"MPL2 subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_EIA_608
,
...
...
@@ -2468,48 +2476,56 @@ static const AVCodecDescriptor codec_descriptors[] = {
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"jacosub"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"JACOsub subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_PJS
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"pjs"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"PJS (Phoenix Japanimation Society) subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_SAMI
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"sami"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"SAMI subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_REALTEXT
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"realtext"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"RealText subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_SUBVIEWER1
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"subviewer1"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"SubViewer v1 subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_SUBVIEWER
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"subviewer"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"SubViewer subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_VPLAYER
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"vplayer"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"VPlayer subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_WEBVTT
,
.
type
=
AVMEDIA_TYPE_SUBTITLE
,
.
name
=
"webvtt"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"WebVTT subtitle"
),
.
props
=
AV_CODEC_PROP_TEXT_SUB
,
},
{
.
id
=
AV_CODEC_ID_BINTEXT
,
...
...
libavcodec/version.h
View file @
380cfce2
...
...
@@ -29,7 +29,7 @@
#include "libavutil/avutil.h"
#define LIBAVCODEC_VERSION_MAJOR 55
#define LIBAVCODEC_VERSION_MINOR
3
#define LIBAVCODEC_VERSION_MINOR
4
#define LIBAVCODEC_VERSION_MICRO 100
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
...
...
libavfilter/vf_subtitles.c
View file @
380cfce2
...
...
@@ -302,7 +302,7 @@ static av_cold int init_subtitles(AVFilterContext *ctx)
return
AVERROR
(
EINVAL
);
}
dec_desc
=
avcodec_descriptor_get
(
dec_ctx
->
codec_id
);
if
(
dec_desc
&&
(
dec_desc
->
props
&
AV_CODEC_PROP_BITMAP
_SUB
))
{
if
(
dec_desc
&&
!
(
dec_desc
->
props
&
AV_CODEC_PROP_TEXT
_SUB
))
{
av_log
(
ctx
,
AV_LOG_ERROR
,
"Only text based subtitles are currently supported
\n
"
);
return
AVERROR_PATCHWELCOME
;
...
...
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