
Recherche avancée
Autres articles (104)
-
Keeping control of your media in your hands
13 avril 2011, parThe vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...) -
Personnaliser les catégories
21 juin 2013, parFormulaire de création d’une catégorie
Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
On peut modifier ce formulaire dans la partie :
Administration > Configuration des masques de formulaire.
Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...) -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (11859)
-
ffmpeg seek calculating wrong byte range ?
17 décembre 2015, par user4455I’m running into an issue while trying to extract thumbnails from a movie file at a specific timestamp. Generally I’ve had no issues with this, but I’ve come across a set of movie files that are getting an error about the byte range requested (416 Requested Range Not Satisfiable).
The odd thing is that the server is correctly returning the content length in the partial content request, yet when it requests the movie file it requests a length that exceeds that.
This is a bit over my head, so I’m not sure what could be happening here. Any insight would be great.
The Command :
/usr/bin/ffmpeg -y -ss 1400 -i 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4' -qscale:v 2 -f image2 -vframes 1 -filter:v 'scale=192:108' -loglevel debug /data/www/storage/test.jpg 2>&1
The Error :
[https @ 0x22e1e00] header='HTTP/1.1 416 Requested Range Not Satisfiable'
[https @ 0x22e1e00] http_code=416
[https @ 0x22e1e00] HTTP error 416 Requested Range Not SatisfiableSource File Size :
1776706045 bytes
Source Content Duration :
2897.624271
Partial Content Request :
[https @ 0x22e1e00] header='HTTP/1.1 206 Partial Content'
[https @ 0x22e1e00] http_code=206
[https @ 0x22e1e00] header='x-amz-id-2: 4J1pgHExIUA0GxIxSBmGJjrRqliHbsIjXeuGzVfTlaaoVXbyZI5FQNma8fGaifcovkXfxJev5yU='
[https @ 0x22e1e00] header='x-amz-request-id: 78B3BDBB0356EF40'
[https @ 0x22e1e00] header='Date: Wed, 16 Dec 2015 23:51:29 GMT'
[https @ 0x22e1e00] header='x-amz-meta-content-length: 2898'
[https @ 0x22e1e00] header='x-amz-meta-cb-modifiedtime: Tue, 15 Dec 2015 17:59:51 GMT'
[https @ 0x22e1e00] header='Last-Modified: Wed, 16 Dec 2015 23:44:59 GMT'
[https @ 0x22e1e00] header='ETag: "6341a8022630667a8070a83575e542e7-27"'
[https @ 0x22e1e00] header='Accept-Ranges: bytes'
[https @ 0x22e1e00] header='Content-Range: bytes 0-1776706044/1776706045'
[https @ 0x22e1e00] header='Content-Type: video/mp4'
[https @ 0x22e1e00] header='Content-Length: 1776706045'
[https @ 0x22e1e00] header='Server: AmazonS3'
[https @ 0x22e1e00] header='Connection: close'FFmpeg Request :
request: GET /my-bucket/mymoviefile.mp4 HTTP/1.1
User-Agent: Lavf/56.25.101
Accept: */*
Range: bytes=1781732960-
Connection: close
Host: s3-us-west-2.amazonaws.com
Icy-MetaData: 1Entire Log :
# /usr/bin/ffmpeg -y -ss 1400 -i 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4' -qscale:v 2 -f image2 -vframes 1 -filter:v 'scale=192:108' -loglevel debug /data/www/storage/test.jpg 2>&1
ffmpeg version 2.6.4 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.9.2 (Debian 4.9.2-10)
configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security ' --extra-ldflags='-Wl,-z,relro' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-nonfree --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-nonfree --disable-stripping --enable-libvpx --enable-libschroedinger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-librtmp --enable-avfilter --enable-libfreetype --enable-libvo-aacenc --disable-decoder=amrnb --enable-libvo-amrwbenc --enable-libaacplus --libdir=/usr/lib/x86_64-linux-gnu --disable-vda --enable-libbluray --enable-libcdio --enable-gnutls --enable-frei0r --enable-openssl --enable-libass --enable-libopus --enable-fontconfig --enable-libpulse --disable-mips32r2 --disable-mipsdspr1 --disable-mipsdspr2 --enable-libvidstab --enable-libzvbi --enable-avresample --disable-htmlpages --disable-podpages --enable-libutvideo --enable-libfdk-aac --enable-libx265 --enable-libiec61883 --enable-vaapi --enable-libdc1394 --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 54. 20.100 / 54. 20.100
libavcodec 56. 26.100 / 56. 26.100
libavformat 56. 25.101 / 56. 25.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 11.102 / 5. 11.102
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
Splitting the commandline.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-ss' ... matched as option 'ss' (set the start time offset) with argument '1400'.
Reading option '-i' ... matched as input file with argument 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4'.
Reading option '-qscale:v' ... matched as option 'qscale' (use fixed quality scale (VBR)) with argument '2'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'image2'.
Reading option '-vframes' ... matched as option 'vframes' (set the number of video frames to output) with argument '1'.
Reading option '-filter:v' ... matched as option 'filter' (set stream filtergraph) with argument 'scale=192:108'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.
Reading option '/data/www/storage/test.jpg' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option y (overwrite output files) with argument 1.
Applying option loglevel (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input file https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4.
Applying option ss (set the start time offset) with argument 1400.
Successfully parsed a group of options.
Opening an input file: https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4.
[https @ 0x22e1e00] request: GET /my-bucket/mymoviefile.mp4 HTTP/1.1
User-Agent: Lavf/56.25.101
Accept: */*
Range: bytes=0-
Connection: close
Host: s3-us-west-2.amazonaws.com
Icy-MetaData: 1
[https @ 0x22e1e00] header='HTTP/1.1 206 Partial Content'
[https @ 0x22e1e00] http_code=206
[https @ 0x22e1e00] header='x-amz-id-2: 4J1pgHExIUA0GxIxSBmGJjrRqliHbsIjXeuGzVfTlaaoVXbyZI5FQNma8fGaifcovkXfxJev5yU='
[https @ 0x22e1e00] header='x-amz-request-id: 78B3BDBB0356EF40'
[https @ 0x22e1e00] header='Date: Wed, 16 Dec 2015 23:51:29 GMT'
[https @ 0x22e1e00] header='x-amz-meta-content-length: 2898'
[https @ 0x22e1e00] header='x-amz-meta-cb-modifiedtime: Tue, 15 Dec 2015 17:59:51 GMT'
[https @ 0x22e1e00] header='Last-Modified: Wed, 16 Dec 2015 23:44:59 GMT'
[https @ 0x22e1e00] header='ETag: "6341a8022630667a8070a83575e542e7-27"'
[https @ 0x22e1e00] header='Accept-Ranges: bytes'
[https @ 0x22e1e00] header='Content-Range: bytes 0-1776706044/1776706045'
[https @ 0x22e1e00] header='Content-Type: video/mp4'
[https @ 0x22e1e00] header='Content-Length: 1776706045'
[https @ 0x22e1e00] header='Server: AmazonS3'
[https @ 0x22e1e00] header='Connection: close'
[https @ 0x22e1e00] header=''
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] ISO: File Type Major Brand: mp42
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] Before avformat_find_stream_info() pos: 1647960 bytes read:1652200 seeks:0
[h264 @ 0x22e92c0] no picture
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] After avformat_find_stream_info() pos: 1862326 bytes read:1878504 seeks:0 frames:16
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: isommp41avc1
creation_time : 2015-11-18 02:34:41
Duration: 00:48:17.70, start: 0.000000, bitrate: 4905 kb/s
Stream #0:0(und), 15, 1/2997: Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], 1001/60000, 9994 kb/s, 29.97 fps, 29.97 tbr, 2997 tbn, 59.94 tbc (default)
Metadata:
creation_time : 2015-11-18 02:34:41
handler_name : ?Apple Video Media Handler
Stream #0:1(und), 1, 1/48000: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 192 kb/s (default)
Metadata:
creation_time : 2015-11-18 02:34:41
handler_name : ?Apple Sound Media Handler
Successfully opened the file.
Parsing a group of options: output file /data/www/storage/test.jpg.
Applying option qscale:v (use fixed quality scale (VBR)) with argument 2.
Applying option f (force format) with argument image2.
Applying option vframes (set the number of video frames to output) with argument 1.
Applying option filter:v (set stream filtergraph) with argument scale=192:108.
Successfully parsed a group of options.
Opening an output file: /data/www/storage/test.jpg.
Successfully opened the file.
detected 2 logical cores
[Parsed_scale_0 @ 0x22cd4c0] Setting 'w' to value '192'
[Parsed_scale_0 @ 0x22cd4c0] Setting 'h' to value '108'
[Parsed_scale_0 @ 0x22cd4c0] Setting 'flags' to value '0x4'
[Parsed_scale_0 @ 0x22cd4c0] w:192 h:108 flags:'0x4' interl:0
[graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'video_size' to value '1920x1080'
[graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'time_base' to value '1/2997'
[graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'pixel_aspect' to value '1/1'
[graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x22ccfe0] Setting 'frame_rate' to value '2997/100'
[graph 0 input from stream 0:0 @ 0x22ccfe0] w:1920 h:1080 pixfmt:yuv420p tb:1/2997 fr:2997/100 sar:1/1 sws_param:flags=2
[format @ 0x2798640] compat: called with args=[yuvj420p|yuvj422p|yuvj444p]
[format @ 0x2798640] Setting 'pix_fmts' to value 'yuvj420p|yuvj422p|yuvj444p'
[AVFilterGraph @ 0x22cda60] query_formats: 5 queried, 4 merged, 0 already done, 0 delayed
[Parsed_scale_0 @ 0x22cd4c0] picking yuvj420p out of 3 ref:yuv420p alpha:0
[swscaler @ 0x22c3c80] deprecated pixel format used, make sure you did set range correctly
[Parsed_scale_0 @ 0x22cd4c0] w:1920 h:1080 fmt:yuv420p sar:1/1 -> w:192 h:108 fmt:yuvj420p sar:1/1 flags:0x4
[mjpeg @ 0x2854e20] intra_quant_bias = 96 inter_quant_bias = 0
[mjpeg @ 0x28716c0] intra_quant_bias = 96 inter_quant_bias = 0
[mjpeg @ 0x2795320] intra_quant_bias = 96 inter_quant_bias = 0
Output #0, image2, to '/data/www/storage/test.jpg':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: isommp41avc1
encoder : Lavf56.25.101
Stream #0:0(und), 0, 100/2997: Video: mjpeg, yuvj420p(pc, left), 192x108 [SAR 1:1 DAR 16:9], 100/2997, q=2-31, 200 kb/s, 29.97 fps, 29.97 tbn, 29.97 tbc (default)
Metadata:
creation_time : 2015-11-18 02:34:41
handler_name : ?Apple Video Media Handler
encoder : Lavc56.26.100 mjpeg
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> mjpeg (native))
Press [q] to stop, [?] for help
[https @ 0x22e1e00] request: GET /my-bucket/mymoviefile.mp4 HTTP/1.1
User-Agent: Lavf/56.25.101
Accept: */*
Range: bytes=1781732960-
Connection: close
Host: s3-us-west-2.amazonaws.com
Icy-MetaData: 1
[https @ 0x22e1e00] header='HTTP/1.1 416 Requested Range Not Satisfiable'
[https @ 0x22e1e00] http_code=416
[https @ 0x22e1e00] HTTP error 416 Requested Range Not Satisfiable
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x22e1740] stream 0, offset 0x6a331660: partial file
https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4: Invalid data found when processing input
[output stream 0:0 @ 0x22d7500] EOF on sink link output stream 0:0:default.
No more output streams to write to, finishing.
frame= 0 fps=0.0 q=0.0 Lsize=N/A time=00:00:00.00 bitrate=N/A
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4):
Input stream #0:0 (video): 0 packets read (0 bytes); 0 frames decoded;
Input stream #0:1 (audio): 0 packets read (0 bytes);
Total: 0 packets (0 bytes) demuxed
Output file #0 (/data/www/storage/test.jpg):
Output stream #0:0 (video): 0 frames encoded; 0 packets muxed (0 bytes);
Total: 0 packets (0 bytes) muxed
Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)
0 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x27ab100] Statistics: 1878504 bytes read, 0 seeksFFprobe Result :
# /usr/bin/ffprobe -show_format -show_streams -i 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4'
ffprobe version 2.6.4 Copyright (c) 2007-2015 the FFmpeg developers
built with gcc 4.9.2 (Debian 4.9.2-10)
configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security ' --extra-ldflags='-Wl,-z,relro' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-nonfree --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-nonfree --disable-stripping --enable-libvpx --enable-libschroedinger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-librtmp --enable-avfilter --enable-libfreetype --enable-libvo-aacenc --disable-decoder=amrnb --enable-libvo-amrwbenc --enable-libaacplus --libdir=/usr/lib/x86_64-linux-gnu --disable-vda --enable-libbluray --enable-libcdio --enable-gnutls --enable-frei0r --enable-openssl --enable-libass --enable-libopus --enable-fontconfig --enable-libpulse --disable-mips32r2 --disable-mipsdspr1 --disable-mipsdspr2 --enable-libvidstab --enable-libzvbi --enable-avresample --disable-htmlpages --disable-podpages --enable-libutvideo --enable-libfdk-aac --enable-libx265 --enable-libiec61883 --enable-vaapi --enable-libdc1394 --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 54. 20.100 / 54. 20.100
libavcodec 56. 26.100 / 56. 26.100
libavformat 56. 25.101 / 56. 25.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 11.102 / 5. 11.102
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: isommp41avc1
creation_time : 2015-11-18 02:34:41
Duration: 00:48:17.70, start: 0.000000, bitrate: 4905 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 9994 kb/s, 29.97 fps, 29.97 tbr, 2997 tbn, 59.94 tbc (default)
Metadata:
creation_time : 2015-11-18 02:34:41
handler_name : ?Apple Video Media Handler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 192 kb/s (default)
Metadata:
creation_time : 2015-11-18 02:34:41
handler_name : ?Apple Sound Media Handler
[STREAM]
index=0
codec_name=h264
codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
profile=High
codec_type=video
codec_time_base=1001/60000
codec_tag_string=avc1
codec_tag=0x31637661
width=1920
height=1080
has_b_frames=1
sample_aspect_ratio=1:1
display_aspect_ratio=16:9
pix_fmt=yuv420p
level=40
color_range=tv
color_space=unknown
color_transfer=unknown
color_primaries=unknown
chroma_location=left
timecode=N/A
refs=3
is_avc=1
nal_length_size=4
id=N/A
r_frame_rate=2997/100
avg_frame_rate=2997/100
time_base=1/2997
start_pts=0
start_time=0.000000
duration_ts=8684300
duration=2897.664331
bit_rate=9994429
max_bit_rate=N/A
bits_per_raw_sample=8
nb_frames=86843
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=1
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
TAG:creation_time=2015-11-18 02:34:41
TAG:language=und
TAG:handler_name=Apple Video Media Handler
[/STREAM]
[STREAM]
index=1
codec_name=aac
codec_long_name=AAC (Advanced Audio Coding)
profile=LC
codec_type=audio
codec_time_base=1/48000
codec_tag_string=mp4a
codec_tag=0x6134706d
sample_fmt=fltp
sample_rate=48000
channels=2
channel_layout=stereo
bits_per_sample=0
id=N/A
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/48000
start_pts=0
start_time=0.000000
duration_ts=139085965
duration=2897.624271
bit_rate=192002
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=135828
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=1
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
TAG:creation_time=2015-11-18 02:34:41
TAG:language=und
TAG:handler_name=Apple Sound Media Handler
[/STREAM]
[FORMAT]
filename=https://s3-us-west-2.amazonaws.com/my-bucket/mymoviefile.mp4
nb_streams=2
nb_programs=0
format_name=mov,mp4,m4a,3gp,3g2,mj2
format_long_name=QuickTime / MOV
start_time=0.000000
duration=2897.695000
size=1776706045
bit_rate=4905156
probe_score=100
TAG:major_brand=mp42
TAG:minor_version=1
TAG:compatible_brands=isommp41avc1
TAG:creation_time=2015-11-18 02:34:41
[/FORMAT] -
Revision 32737 : habillage par defaut de Zpip utilise les conventions documentees
8 novembre 2009, par cedric@… — Loghabillage par defaut de Zpip utilise les conventions documentees
-
syntax error on accessing a structure variables
23 octobre 2013, par JAYANTHIThis is my code
typedef struct AVInputFormat {
/**
* A comma separated list of short names for the format. New names
* may be appended with a minor bump.
*/
const char *name;
/**
* Descriptive name for the format, meant to be more human-readable
* than name. You should use the NULL_IF_CONFIG_SMALL() macro
* to define it.
*/
const char *long_name;
/**
* Can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_SHOW_IDS,
* AVFMT_GENERIC_INDEX, AVFMT_TS_DISCONT, AVFMT_NOBINSEARCH,
* AVFMT_NOGENSEARCH, AVFMT_NO_BYTE_SEEK, AVFMT_SEEK_TO_PTS.
*/
int flags;
/**
* If extensions are defined, then no probe is done. You should
* usually not use extension format guessing because it is not
* reliable enough
*/
const char *extensions;
const struct AVCodecTag * const *codec_tag;
const AVClass *priv_class; ///< AVClass for the private context
/*****************************************************************
* No fields below this line are part of the public API. They
* may not be used outside of libavformat and can be changed and
* removed at will.
* New public fields should be added right above.
*****************************************************************
*/
struct AVInputFormat *next;
/**
* Raw demuxers store their codec ID here.
*/
int raw_codec_id;
/**
* Size of private data so that it can be allocated in the wrapper.
*/
int priv_data_size;
/**
* Tell if a given file has a chance of being parsed as this format.
* The buffer provided is guaranteed to be AVPROBE_PADDING_SIZE bytes
* big so you do not have to check for that unless you need more.
*/
int (*read_probe)(AVProbeData *);
/**
* Read the format header and initialize the AVFormatContext
* structure. Return 0 if OK. Only used in raw format right
* now. 'avformat_new_stream' should be called to create new streams.
*/
int (*read_header)(struct AVFormatContext *);
/**
* Read one packet and put it in 'pkt'. pts and flags are also
* set. 'avformat_new_stream' can be called only if the flag
* AVFMTCTX_NOHEADER is used and only in the calling thread (not in a
* background thread).
* @return 0 on success, < 0 on error.
* When returning an error, pkt must not have been allocated
* or must be freed before returning
*/
int (*read_packet)(struct AVFormatContext *, AVPacket *pkt);
/**
* Close the stream. The AVFormatContext and AVStreams are not
* freed by this function
*/
int (*read_close)(struct AVFormatContext *);
/**
* Seek to a given timestamp relative to the frames in
* stream component stream_index.
* @param stream_index Must not be -1.
* @param flags Selects which direction should be preferred if no exact
* match is available.
* @return >= 0 on success (but not necessarily the new offset)
*/
int (*read_seek)(struct AVFormatContext *,
int stream_index, int64_t timestamp, int flags);
/**
* Get the next timestamp in stream[stream_index].time_base units.
* @return the timestamp or AV_NOPTS_VALUE if an error occurred
*/
int64_t (*read_timestamp)(struct AVFormatContext *s, int stream_index,
int64_t *pos, int64_t pos_limit);
/**
* Start/resume playing - only meaningful if using a network-based format
* (RTSP).
*/
int (*read_play)(struct AVFormatContext *);
/**
* Pause playing - only meaningful if using a network-based format
* (RTSP).
*/
int (*read_pause)(struct AVFormatContext *);
/**
* Seek to timestamp ts.
* Seeking will be done so that the point from which all active streams
* can be presented successfully will be closest to ts and within min/max_ts.
* Active streams are all streams that have AVStream.discard < AVDISCARD_ALL.
*/
int (*read_seek2)(struct AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags);
} AVInputFormat;
AVInputFormat ff_yop_demuxer = {
.name = "yop", //error here
.long_name = NULL_IF_CONFIG_SMALL("Psygnosis YOP"),
.priv_data_size = sizeof(YopDecContext),
.read_probe = yop_probe,
.read_header = yop_read_header,
.read_packet = yop_read_packet,
.read_close = yop_read_close,
.read_seek = yop_read_seek,
.extensions = "yop",
.flags = AVFMT_GENERIC_INDEX,
};Getting error like,
3>c:\users\awki6\desktop\ffmpeg\libavformat\yop.cpp(235): error C2143: syntax error : missing '}' before '.'
3>c:\users\awki6\desktop\ffmpeg\libavformat\yop.cpp(235): error C2143: syntax error : missing ';' before '.'
3>c:\users\awki6\desktop\ffmpeg\libavformat\yop.cpp(235): error C2059: syntax error : '.'
3>c:\users\awki6\desktop\ffmpeg\libavformat\yop.cpp(245): error C2143: syntax error : missing ';' before '}'
3>c:\users\awki6\desktop\ffmpeg\libavformat\yop.cpp(245): error C2059: syntax error : '}'
Please help me to solve those errors