Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
F
ffmpeg
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
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
ffmpeg
Commits
215b7724
Commit
215b7724
authored
Dec 02, 2011
by
Clément Bœsch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lavf: rename remaining av_set_pts_info() to avpriv_set_pts_info().
parent
eac5987c
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
34 additions
and
22 deletions
+34
-22
alsa-audio-enc.c
libavdevice/alsa-audio-enc.c
+2
-1
dshow.c
libavdevice/dshow.c
+2
-2
lavfi.c
libavdevice/lavfi.c
+2
-1
openal-dec.c
libavdevice/openal-dec.c
+2
-1
act.c
libavformat/act.c
+2
-1
bintext.c
libavformat/bintext.c
+3
-2
bit.c
libavformat/bit.c
+2
-1
electronicarts.c
libavformat/electronicarts.c
+1
-1
g723_1.c
libavformat/g723_1.c
+2
-1
g729dec.c
libavformat/g729dec.c
+2
-1
libmodplug.c
libavformat/libmodplug.c
+3
-2
loasdec.c
libavformat/loasdec.c
+2
-1
microdvddec.c
libavformat/microdvddec.c
+1
-1
mkvtimestamp_v2.c
libavformat/mkvtimestamp_v2.c
+2
-1
pmpdec.c
libavformat/pmpdec.c
+3
-2
wav.c
libavformat/wav.c
+1
-1
wtvdec.c
libavformat/wtvdec.c
+1
-1
wtvenc.c
libavformat/wtvenc.c
+1
-1
No files found.
libavdevice/alsa-audio-enc.c
View file @
215b7724
...
@@ -39,6 +39,7 @@
...
@@ -39,6 +39,7 @@
#include <alsa/asoundlib.h>
#include <alsa/asoundlib.h>
#include "libavformat/internal.h"
#include "avdevice.h"
#include "avdevice.h"
#include "alsa-audio.h"
#include "alsa-audio.h"
...
@@ -61,7 +62,7 @@ static av_cold int audio_write_header(AVFormatContext *s1)
...
@@ -61,7 +62,7 @@ static av_cold int audio_write_header(AVFormatContext *s1)
st
->
codec
->
sample_rate
,
sample_rate
);
st
->
codec
->
sample_rate
,
sample_rate
);
goto
fail
;
goto
fail
;
}
}
av_set_pts_info
(
st
,
64
,
1
,
sample_rate
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
sample_rate
);
return
res
;
return
res
;
...
...
libavdevice/dshow.c
View file @
215b7724
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
#include "libavutil/parseutils.h"
#include "libavutil/parseutils.h"
#include "libavutil/opt.h"
#include "libavutil/opt.h"
#include "libavformat/internal.h"
#include "avdevice.h"
#include "avdevice.h"
#include "dshow.h"
#include "dshow.h"
...
@@ -739,7 +739,7 @@ dshow_add_device(AVFormatContext *avctx, AVFormatParameters *ap,
...
@@ -739,7 +739,7 @@ dshow_add_device(AVFormatContext *avctx, AVFormatParameters *ap,
codec
->
channels
=
fx
->
nChannels
;
codec
->
channels
=
fx
->
nChannels
;
}
}
av_set_pts_info
(
st
,
64
,
1
,
10000000
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
10000000
);
ret
=
0
;
ret
=
0
;
...
...
libavdevice/lavfi.c
View file @
215b7724
...
@@ -35,6 +35,7 @@
...
@@ -35,6 +35,7 @@
#include "libavfilter/avfilter.h"
#include "libavfilter/avfilter.h"
#include "libavfilter/avfiltergraph.h"
#include "libavfilter/avfiltergraph.h"
#include "libavfilter/buffersink.h"
#include "libavfilter/buffersink.h"
#include "libavformat/internal.h"
#include "avdevice.h"
#include "avdevice.h"
typedef
struct
{
typedef
struct
{
...
@@ -231,7 +232,7 @@ av_cold static int lavfi_read_header(AVFormatContext *avctx,
...
@@ -231,7 +232,7 @@ av_cold static int lavfi_read_header(AVFormatContext *avctx,
AVFilterLink
*
link
=
lavfi
->
sinks
[
lavfi
->
stream_sink_map
[
i
]]
->
inputs
[
0
];
AVFilterLink
*
link
=
lavfi
->
sinks
[
lavfi
->
stream_sink_map
[
i
]]
->
inputs
[
0
];
AVStream
*
st
=
avctx
->
streams
[
i
];
AVStream
*
st
=
avctx
->
streams
[
i
];
st
->
codec
->
codec_type
=
link
->
type
;
st
->
codec
->
codec_type
=
link
->
type
;
av_set_pts_info
(
st
,
64
,
link
->
time_base
.
num
,
link
->
time_base
.
den
);
av
priv
_set_pts_info
(
st
,
64
,
link
->
time_base
.
num
,
link
->
time_base
.
den
);
if
(
link
->
type
==
AVMEDIA_TYPE_VIDEO
)
{
if
(
link
->
type
==
AVMEDIA_TYPE_VIDEO
)
{
st
->
codec
->
codec_id
=
CODEC_ID_RAWVIDEO
;
st
->
codec
->
codec_id
=
CODEC_ID_RAWVIDEO
;
st
->
codec
->
pix_fmt
=
link
->
format
;
st
->
codec
->
pix_fmt
=
link
->
format
;
...
...
libavdevice/openal-dec.c
View file @
215b7724
...
@@ -25,6 +25,7 @@
...
@@ -25,6 +25,7 @@
#include <AL/alc.h>
#include <AL/alc.h>
#include "libavutil/opt.h"
#include "libavutil/opt.h"
#include "libavformat/internal.h"
#include "avdevice.h"
#include "avdevice.h"
typedef
struct
{
typedef
struct
{
...
@@ -151,7 +152,7 @@ static int read_header(AVFormatContext *ctx, AVFormatParameters *ap)
...
@@ -151,7 +152,7 @@ static int read_header(AVFormatContext *ctx, AVFormatParameters *ap)
}
}
/* We work in microseconds */
/* We work in microseconds */
av_set_pts_info
(
st
,
64
,
1
,
1000000
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
1000000
);
/* Set codec parameters */
/* Set codec parameters */
codec
=
st
->
codec
;
codec
=
st
->
codec
;
...
...
libavformat/act.c
View file @
215b7724
...
@@ -20,6 +20,7 @@
...
@@ -20,6 +20,7 @@
*/
*/
#include "avformat.h"
#include "avformat.h"
#include "riff.h"
#include "riff.h"
#include "internal.h"
#include "libavcodec/get_bits.h"
#include "libavcodec/get_bits.h"
#define CHUNK_SIZE 512
#define CHUNK_SIZE 512
...
@@ -88,7 +89,7 @@ static int read_header(AVFormatContext *s,
...
@@ -88,7 +89,7 @@ static int read_header(AVFormatContext *s,
st
->
codec
->
frame_size
=
80
;
st
->
codec
->
frame_size
=
80
;
st
->
codec
->
channels
=
1
;
st
->
codec
->
channels
=
1
;
av_set_pts_info
(
st
,
64
,
1
,
100
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
100
);
st
->
codec
->
codec_id
=
CODEC_ID_G729
;
st
->
codec
->
codec_id
=
CODEC_ID_G729
;
...
...
libavformat/bintext.c
View file @
215b7724
...
@@ -32,6 +32,7 @@
...
@@ -32,6 +32,7 @@
#include "libavutil/intreadwrite.h"
#include "libavutil/intreadwrite.h"
#include "avformat.h"
#include "avformat.h"
#include "internal.h"
#include "sauce.h"
#include "sauce.h"
#include "libavcodec/bintext.h"
#include "libavcodec/bintext.h"
...
@@ -109,9 +110,9 @@ static AVStream * init_stream(AVFormatContext *s,
...
@@ -109,9 +110,9 @@ static AVStream * init_stream(AVFormatContext *s,
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
if
(
!
ap
->
time_base
.
num
)
{
if
(
!
ap
->
time_base
.
num
)
{
av_set_pts_info
(
st
,
60
,
1
,
25
);
av
priv
_set_pts_info
(
st
,
60
,
1
,
25
);
}
else
{
}
else
{
av_set_pts_info
(
st
,
60
,
ap
->
time_base
.
num
,
ap
->
time_base
.
den
);
av
priv
_set_pts_info
(
st
,
60
,
ap
->
time_base
.
num
,
ap
->
time_base
.
den
);
}
}
/* simulate tty display speed */
/* simulate tty display speed */
...
...
libavformat/bit.c
View file @
215b7724
...
@@ -19,6 +19,7 @@
...
@@ -19,6 +19,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
*/
#include "avformat.h"
#include "avformat.h"
#include "internal.h"
#include "libavcodec/get_bits.h"
#include "libavcodec/get_bits.h"
#include "libavcodec/put_bits.h"
#include "libavcodec/put_bits.h"
...
@@ -60,7 +61,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -60,7 +61,7 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap)
st
->
codec
->
block_align
=
16
;
st
->
codec
->
block_align
=
16
;
st
->
codec
->
channels
=
1
;
st
->
codec
->
channels
=
1
;
av_set_pts_info
(
st
,
64
,
1
,
100
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
100
);
return
0
;
return
0
;
}
}
...
...
libavformat/electronicarts.c
View file @
215b7724
...
@@ -420,7 +420,7 @@ static int ea_read_header(AVFormatContext *s,
...
@@ -420,7 +420,7 @@ static int ea_read_header(AVFormatContext *s,
st
->
need_parsing
=
AVSTREAM_PARSE_HEADERS
;
st
->
need_parsing
=
AVSTREAM_PARSE_HEADERS
;
st
->
codec
->
codec_tag
=
0
;
/* no fourcc */
st
->
codec
->
codec_tag
=
0
;
/* no fourcc */
if
(
ea
->
time_base
.
num
)
if
(
ea
->
time_base
.
num
)
av_set_pts_info
(
st
,
64
,
ea
->
time_base
.
num
,
ea
->
time_base
.
den
);
av
priv
_set_pts_info
(
st
,
64
,
ea
->
time_base
.
num
,
ea
->
time_base
.
den
);
st
->
codec
->
width
=
ea
->
width
;
st
->
codec
->
width
=
ea
->
width
;
st
->
codec
->
height
=
ea
->
height
;
st
->
codec
->
height
=
ea
->
height
;
}
}
...
...
libavformat/g723_1.c
View file @
215b7724
...
@@ -25,6 +25,7 @@
...
@@ -25,6 +25,7 @@
*/
*/
#include "avformat.h"
#include "avformat.h"
#include "internal.h"
static
const
uint8_t
frame_size
[
4
]
=
{
24
,
20
,
4
,
1
};
static
const
uint8_t
frame_size
[
4
]
=
{
24
,
20
,
4
,
1
};
...
@@ -41,7 +42,7 @@ static int g723_1_init(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -41,7 +42,7 @@ static int g723_1_init(AVFormatContext *s, AVFormatParameters *ap)
st
->
codec
->
channels
=
1
;
st
->
codec
->
channels
=
1
;
st
->
codec
->
sample_rate
=
8000
;
st
->
codec
->
sample_rate
=
8000
;
av_set_pts_info
(
st
,
64
,
1
,
st
->
codec
->
sample_rate
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
st
->
codec
->
sample_rate
);
return
0
;
return
0
;
}
}
...
...
libavformat/g729dec.c
View file @
215b7724
...
@@ -20,6 +20,7 @@
...
@@ -20,6 +20,7 @@
*/
*/
#include "avformat.h"
#include "avformat.h"
#include "internal.h"
#include "libavutil/log.h"
#include "libavutil/log.h"
#include "libavutil/opt.h"
#include "libavutil/opt.h"
...
@@ -60,7 +61,7 @@ static int g729_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -60,7 +61,7 @@ static int g729_read_header(AVFormatContext *s, AVFormatParameters *ap)
return
AVERROR_INVALIDDATA
;
return
AVERROR_INVALIDDATA
;
}
}
av_set_pts_info
(
st
,
st
->
codec
->
block_align
<<
3
,
1
,
st
->
codec
->
sample_rate
);
av
priv
_set_pts_info
(
st
,
st
->
codec
->
block_align
<<
3
,
1
,
st
->
codec
->
sample_rate
);
return
0
;
return
0
;
}
}
static
int
g729_read_packet
(
AVFormatContext
*
s
,
AVPacket
*
pkt
)
static
int
g729_read_packet
(
AVFormatContext
*
s
,
AVPacket
*
pkt
)
...
...
libavformat/libmodplug.c
View file @
215b7724
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
#include "libavutil/eval.h"
#include "libavutil/eval.h"
#include "libavutil/opt.h"
#include "libavutil/opt.h"
#include "avformat.h"
#include "avformat.h"
#include "internal.h"
typedef
struct
ModPlugContext
{
typedef
struct
ModPlugContext
{
const
AVClass
*
class
;
const
AVClass
*
class
;
...
@@ -220,7 +221,7 @@ static int modplug_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -220,7 +221,7 @@ static int modplug_read_header(AVFormatContext *s, AVFormatParameters *ap)
st
=
avformat_new_stream
(
s
,
NULL
);
st
=
avformat_new_stream
(
s
,
NULL
);
if
(
!
st
)
if
(
!
st
)
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
av_set_pts_info
(
st
,
64
,
1
,
1000
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
1000
);
st
->
duration
=
ModPlug_GetLength
(
modplug
->
f
);
st
->
duration
=
ModPlug_GetLength
(
modplug
->
f
);
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_AUDIO
;
st
->
codec
->
codec_id
=
CODEC_ID_PCM_S16LE
;
st
->
codec
->
codec_id
=
CODEC_ID_PCM_S16LE
;
...
@@ -234,7 +235,7 @@ static int modplug_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -234,7 +235,7 @@ static int modplug_read_header(AVFormatContext *s, AVFormatParameters *ap)
AVStream
*
vst
=
avformat_new_stream
(
s
,
NULL
);
AVStream
*
vst
=
avformat_new_stream
(
s
,
NULL
);
if
(
!
vst
)
if
(
!
vst
)
return
AVERROR
(
ENOMEM
);
return
AVERROR
(
ENOMEM
);
av_set_pts_info
(
vst
,
64
,
1
,
1000
);
av
priv
_set_pts_info
(
vst
,
64
,
1
,
1000
);
vst
->
duration
=
st
->
duration
;
vst
->
duration
=
st
->
duration
;
vst
->
codec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
vst
->
codec
->
codec_type
=
AVMEDIA_TYPE_VIDEO
;
vst
->
codec
->
codec_id
=
CODEC_ID_XBIN
;
vst
->
codec
->
codec_id
=
CODEC_ID_XBIN
;
...
...
libavformat/loasdec.c
View file @
215b7724
...
@@ -22,6 +22,7 @@
...
@@ -22,6 +22,7 @@
#include "libavutil/intreadwrite.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/internal.h"
#include "libavutil/internal.h"
#include "avformat.h"
#include "avformat.h"
#include "internal.h"
#include "rawdec.h"
#include "rawdec.h"
static
int
loas_probe
(
AVProbeData
*
p
)
static
int
loas_probe
(
AVProbeData
*
p
)
...
@@ -72,7 +73,7 @@ static int loas_read_header(AVFormatContext *s,
...
@@ -72,7 +73,7 @@ static int loas_read_header(AVFormatContext *s,
st
->
need_parsing
=
AVSTREAM_PARSE_FULL
;
st
->
need_parsing
=
AVSTREAM_PARSE_FULL
;
//LCM of all possible AAC sample rates
//LCM of all possible AAC sample rates
av_set_pts_info
(
st
,
64
,
1
,
28224000
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
28224000
);
return
0
;
return
0
;
}
}
...
...
libavformat/microdvddec.c
View file @
215b7724
...
@@ -74,7 +74,7 @@ static int microdvd_read_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -74,7 +74,7 @@ static int microdvd_read_header(AVFormatContext *s, AVFormatParameters *ap)
i
--
;
i
--
;
}
}
}
}
av_set_pts_info
(
st
,
64
,
pts_info
.
den
,
pts_info
.
num
);
av
priv
_set_pts_info
(
st
,
64
,
pts_info
.
den
,
pts_info
.
num
);
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_SUBTITLE
;
st
->
codec
->
codec_type
=
AVMEDIA_TYPE_SUBTITLE
;
st
->
codec
->
codec_id
=
CODEC_ID_MICRODVD
;
st
->
codec
->
codec_id
=
CODEC_ID_MICRODVD
;
return
0
;
return
0
;
...
...
libavformat/mkvtimestamp_v2.c
View file @
215b7724
...
@@ -20,12 +20,13 @@
...
@@ -20,12 +20,13 @@
*/
*/
#include "avformat.h"
#include "avformat.h"
#include "internal.h"
static
int
write_header
(
AVFormatContext
*
s
)
static
int
write_header
(
AVFormatContext
*
s
)
{
{
static
const
char
*
header
=
"# timecode format v2
\n
"
;
static
const
char
*
header
=
"# timecode format v2
\n
"
;
put_buffer
(
s
->
pb
,
header
,
strlen
(
header
));
put_buffer
(
s
->
pb
,
header
,
strlen
(
header
));
av_set_pts_info
(
s
->
streams
[
0
],
64
,
1
,
1000
);
av
priv
_set_pts_info
(
s
->
streams
[
0
],
64
,
1
,
1000
);
return
0
;
return
0
;
}
}
...
...
libavformat/pmpdec.c
View file @
215b7724
...
@@ -21,6 +21,7 @@
...
@@ -21,6 +21,7 @@
#include "libavutil/intreadwrite.h"
#include "libavutil/intreadwrite.h"
#include "avformat.h"
#include "avformat.h"
#include "internal.h"
typedef
struct
{
typedef
struct
{
int
cur_stream
;
int
cur_stream
;
...
@@ -70,7 +71,7 @@ static int pmp_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -70,7 +71,7 @@ static int pmp_header(AVFormatContext *s, AVFormatParameters *ap)
tb_num
=
avio_rl32
(
pb
);
tb_num
=
avio_rl32
(
pb
);
tb_den
=
avio_rl32
(
pb
);
tb_den
=
avio_rl32
(
pb
);
av_set_pts_info
(
vst
,
32
,
tb_num
,
tb_den
);
av
priv
_set_pts_info
(
vst
,
32
,
tb_num
,
tb_den
);
vst
->
nb_frames
=
index_cnt
;
vst
->
nb_frames
=
index_cnt
;
vst
->
duration
=
index_cnt
;
vst
->
duration
=
index_cnt
;
...
@@ -98,7 +99,7 @@ static int pmp_header(AVFormatContext *s, AVFormatParameters *ap)
...
@@ -98,7 +99,7 @@ static int pmp_header(AVFormatContext *s, AVFormatParameters *ap)
ast
->
codec
->
codec_id
=
audio_codec_id
;
ast
->
codec
->
codec_id
=
audio_codec_id
;
ast
->
codec
->
channels
=
channels
;
ast
->
codec
->
channels
=
channels
;
ast
->
codec
->
sample_rate
=
srate
;
ast
->
codec
->
sample_rate
=
srate
;
av_set_pts_info
(
ast
,
32
,
1
,
srate
);
av
priv
_set_pts_info
(
ast
,
32
,
1
,
srate
);
}
}
pos
=
avio_tell
(
pb
)
+
4
*
index_cnt
;
pos
=
avio_tell
(
pb
)
+
4
*
index_cnt
;
for
(
i
=
0
;
i
<
index_cnt
;
i
++
)
{
for
(
i
=
0
;
i
<
index_cnt
;
i
++
)
{
...
...
libavformat/wav.c
View file @
215b7724
...
@@ -498,7 +498,7 @@ static int wav_read_header(AVFormatContext *s,
...
@@ -498,7 +498,7 @@ static int wav_read_header(AVFormatContext *s,
wav
->
smv_data_ofs
=
avio_tell
(
pb
)
+
(
size
-
5
)
*
3
;
wav
->
smv_data_ofs
=
avio_tell
(
pb
)
+
(
size
-
5
)
*
3
;
avio_rl24
(
pb
);
avio_rl24
(
pb
);
wav
->
smv_block_size
=
avio_rl24
(
pb
);
wav
->
smv_block_size
=
avio_rl24
(
pb
);
av_set_pts_info
(
vst
,
32
,
1
,
avio_rl24
(
pb
));
av
priv
_set_pts_info
(
vst
,
32
,
1
,
avio_rl24
(
pb
));
vst
->
duration
=
avio_rl24
(
pb
);
vst
->
duration
=
avio_rl24
(
pb
);
avio_rl24
(
pb
);
avio_rl24
(
pb
);
avio_rl24
(
pb
);
avio_rl24
(
pb
);
...
...
libavformat/wtvdec.c
View file @
215b7724
...
@@ -570,7 +570,7 @@ static AVStream * new_stream(AVFormatContext *s, AVStream *st, int sid, int code
...
@@ -570,7 +570,7 @@ static AVStream * new_stream(AVFormatContext *s, AVStream *st, int sid, int code
}
}
st
->
codec
->
codec_type
=
codec_type
;
st
->
codec
->
codec_type
=
codec_type
;
st
->
need_parsing
=
AVSTREAM_PARSE_FULL
;
st
->
need_parsing
=
AVSTREAM_PARSE_FULL
;
av_set_pts_info
(
st
,
64
,
1
,
10000000
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
10000000
);
return
st
;
return
st
;
}
}
...
...
libavformat/wtvenc.c
View file @
215b7724
...
@@ -327,7 +327,7 @@ static int write_stream_data(AVFormatContext *s, AVStream *st, int flag)
...
@@ -327,7 +327,7 @@ static int write_stream_data(AVFormatContext *s, AVStream *st, int flag)
}
}
finish_chunk
(
s
);
finish_chunk
(
s
);
av_set_pts_info
(
st
,
64
,
1
,
10000000
);
av
priv
_set_pts_info
(
st
,
64
,
1
,
10000000
);
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