Recherche avancée

Médias (1)

Mot : - Tags -/censure

Autres articles (82)

  • Les vidéos

    21 avril 2011, par

    Comme les documents de type "audio", Mediaspip affiche dans la mesure du possible les vidéos grâce à la balise html5 .
    Un des inconvénients de cette balise est qu’elle n’est pas reconnue correctement par certains navigateurs (Internet Explorer pour ne pas le nommer) et que chaque navigateur ne gère en natif que certains formats de vidéos.
    Son avantage principal quant à lui est de bénéficier de la prise en charge native de vidéos dans les navigateur et donc de se passer de l’utilisation de Flash et (...)

  • Use, discuss, criticize

    13 avril 2011, par

    Talk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
    The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
    A discussion list is available for all exchanges between users.

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

Sur d’autres sites (4967)

  • How to reduce size of moov atom of H.264 movies to improve streaming start for smartphones ?

    14 avril 2013, par alebedev

    We run a video service streaming movies to smartphones (iOS&Android).
    We are encoding in H.264+AAC and using the mp4 container.
    We have a problem that long movies (60 minutes+) take a very long time to
    start playing and have tracked this down to the large size of moov
    atom for these movies.
    For 110 minute movies the atom is as large as 4.2Mb which obviously takes a long
    time to download to a smart-phone over 3G !

    Is there anyway to make the moov atom smaller ? We can reduce it bit
    by dropping the audio sampling rate, but obviously anything below 22kHz
    would not really be acceptable.

    We are using ffmpeg as the encoder, and MP4Box to move the metadata
    to the front of the file. Is there any way to get it to make
    a smaller moov ? Any other encoders out there which make a smaller moov ?

    For example...

    Big size (280 Mb, 1h 49min) streamable mp4 (h.264, AAC) file have a big header size (4.2 Mb). File was encoded by two pass ffmpeg and MP4Box for replacing metadata into beginning of the file :

    /usr/bin/ffmpeg -i /var/lib/encoder/incoming/2388 -aspect 320:210 -threads 8 -vcodec libx264 -profile baseline -level 13 -flags +loop+mv4 -cmp 256 -partitions +parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -me_method hex -subq 7 -trellis 1 -refs 5 -bf 0 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -qmin 10 -qmax 51 -qdiff 4 -b:v 270k -maxrate 270k -bufsize 270k -g 30 -passlogfile /tmp/mediaservice/3100/video-IPH.ffmpeg -an -f rawvideo -pass 1 -y /dev/null

    /usr/bin/ffmpeg -i /var/lib/encoder/incoming/2388 -aspect 320:210 -threads 8 -vcodec libx264 -profile baseline -level 13 -flags +loop+mv4 -cmp 256 -partitions +parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -me_method hex -subq 7 -trellis 1 -refs 5 -bf 0 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -qmin 10 -qmax 51 -qdiff 4 -b:v 270k -maxrate 270k -bufsize 270k -g 30 -passlogfile /tmp/mediaservice/3100/video-IPH.ffmpeg -acodec libfaac -ac 2 -b:a 32k -ar 44100 -f mp4 -pass 2 -y /var/lib/encoder/encoded/3100/video-IPH.mp4

    /usr/bin/MP4Box -quiet -tmp /tmp/mediaservice/3100/ -inter 500 /var/lib/encoder/encoded/3100/video-IPH.mp4

    Media info (audio sample rate = 44100) :

    General
    Count                                    : 278
    Count of stream of this kind             : 1
    Kind of stream                           : General
    Kind of stream                           : General
    Stream identifier                        : 0
    Count of video streams                   : 1
    Count of audio streams                   : 1
    Video_Format_List                        : AVC
    Video_Format_WithHint_List               : AVC
    Codecs Video                             : AVC
    Audio_Format_List                        : AAC
    Audio_Format_WithHint_List               : AAC
    Audio codecs                             : AAC LC
    Complete name                            : 1348645218_970458_2465.iph.mp4
    File name                                : 1348645218_970458_2465.iph.mp4
    File extension                           : mp4
    Format                                   : MPEG-4
    Format                                   : MPEG-4
    Format/Extensions usually used           : mp4 m4v m4a m4b m4p 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma f4v
    Commercial name                          : MPEG-4
    Format profile                           : Base Media
    Internet media type                      : video/mp4
    Codec ID                                 : isom
    Codec ID/Url                             : http://www.apple.com/quicktime/download/standalone.html
    Codec                                    : MPEG-4
    Codec                                    : MPEG-4
    Codec/Extensions usually used            : mp4 m4v m4a m4b m4p 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma f4v
    File size                                : 272703970
    File size                                : 260 MiB
    File size                                : 260 MiB
    File size                                : 260 MiB
    File size                                : 260 MiB
    File size                                : 260.1 MiB
    Duration                                 : 6556027
    Duration                                 : 1h 49mn
    Duration                                 : 1h 49mn 16s 27ms
    Duration                                 : 1h 49mn
    Duration                                 : 01:49:16.027
    Overall bit rate                         : 332767
    Overall bit rate                         : 333 Kbps
    Stream size                              : 4230761
    Stream size                              : 4.03 MiB (2%)
    Stream size                              : 4 MiB
    Stream size                              : 4.0 MiB
    Stream size                              : 4.03 MiB
    Stream size                              : 4.035 MiB
    Stream size                              : 4.03 MiB (2%)
    Proportion of this stream                : 0.01551
    HeaderSize                               : 4230683
    DataSize                                 : 268473217
    FooterSize                               : 70
    IsStreamable                             : Yes
    File last modification date              : UTC 2012-09-26 12:38:19
    File last modification date (local)      : 2012-09-26 21:38:19
    Writing application                      : Lavf54.6.100

    Video
    Count                                    : 201
    Count of stream of this kind             : 1
    Kind of stream                           : Video
    Kind of stream                           : Video
    Stream identifier                        : 0
    ID                                       : 1
    ID                                       : 1
    Format                                   : AVC
    Format/Info                              : Advanced Video Codec
    Format/Url                               : http://developers.videolan.org/x264.html
    Commercial name                          : AVC
    Format profile                           : Baseline@L1.3
    Format settings                          : 5 Ref Frames
    Format settings, CABAC                   : No
    Format settings, CABAC                   : No
    Format settings, ReFrames                : 5
    Format settings, ReFrames                : 5 frames
    Format settings, GOP                     : M=1, N=30
    Internet media type                      : video/H264
    Codec ID                                 : avc1
    Codec ID/Info                            : Advanced Video Coding
    Codec ID/Url                             : http://www.apple.com/quicktime/download/standalone.html
    Codec                                    : AVC
    Codec                                    : AVC
    Codec/Family                             : AVC
    Codec/Info                               : Advanced Video Codec
    Codec/Url                                : http://developers.videolan.org/x264.html
    Codec/CC                                 : avc1
    Codec profile                            : Baseline@L1.3
    Codec settings                           : 5 Ref Frames
    Codec settings, CABAC                    : No
    Codec_Settings_RefFrames                 : 5
    Duration                                 : 6556017
    Duration                                 : 01:49:16.017
    Bit rate                                 : 270000
    Bit rate                                 : 270 Kbps
    Width                                    : 480
    Width                                    : 480 pixels
    Height                                   : 270
    Height                                   : 270 pixels
    Pixel aspect ratio                       : 1.000
    Display aspect ratio                     : 1.778
    Display aspect ratio                     : 16:9
    Rotation                                 : 0.000
    Frame rate mode                          : CFR
    Frame rate mode                          : Constant
    FrameRate_Mode_Original                  : VFR
    Frame rate                               : 29.970
    Frame rate                               : 29.970 fps
    Frame count                              : 196484
    Resolution                               : 8
    Resolution                               : 8 bits
    Colorimetry                              : 4:2:0
    Color space                              : YUV
    Chroma subsampling                       : 4:2:0
    Bit depth                                : 8
    Bit depth                                : 8 bits
    Scan type                                : Progressive
    Scan type                                : Progressive
    Interlacement                            : PPF
    Interlacement                            : Progressive
    Bits/(Pixel*Frame)                       : 0.070
    Stream size                              : 220159060
    Stream size                              : 210 MiB (81%)
    Stream size                              : 210 MiB
    Stream size                              : 210 MiB
    Stream size                              : 210 MiB
    Stream size                              : 210.0 MiB
    Stream size                              : 210 MiB (81%)
    Proportion of this stream                : 0.80732
    Writing library                          : x264 - core 125
    Writing library                          : x264 core 125
    Writing library/Name                     : x264
    Writing library/Version                  : core 125
    Encoding settings                        : cabac=0 / ref=5 / deblock=1:0:0 / analyse=0x1:0x131 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=8 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=0 / weightp=0 / keyint=30 / keyint_min=16 / scenecut=40 / intra_refresh=0 / rc_lookahead=30 / rc=2pass / mbtree=1 / bitrate=270 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / vbv_maxrate=270 / vbv_bufsize=270 / nal_hrd=none / ip_ratio=1.40 / aq=1:1.00
    Tagged date                              : UTC 2012-09-25 07:21:37

    Audio
    Count                                    : 169
    Count of stream of this kind             : 1
    Kind of stream                           : Audio
    Kind of stream                           : Audio
    Stream identifier                        : 0
    ID                                       : 2
    ID                                       : 2
    Format                                   : AAC
    Format/Info                              : Advanced Audio Codec
    Commercial name                          : AAC
    Format profile                           : LC
    Codec ID                                 : 40
    Codec                                    : AAC LC
    Codec                                    : AAC LC
    Codec/Family                             : AAC
    Codec/CC                                 : 40
    Duration                                 : 6556027
    Duration                                 : 1h 49mn
    Duration                                 : 1h 49mn 16s 27ms
    Duration                                 : 1h 49mn
    Duration                                 : 01:49:16.027
    Bit rate mode                            : VBR
    Bit rate mode                            : Variable
    Bit rate                                 : 58955
    Bit rate                                 : 59.0 Kbps
    Maximum bit rate                         : 270000
    Maximum bit rate                         : 270 Kbps
    Channel(s)                               : 2
    Channel(s)                               : 2 channels
    Channel positions                        : Front: L R
    Channel positions                        : 2/0/0
    Sampling rate                            : 44100
    Sampling rate                            : 44.1 KHz
    Samples count                            : 289120791
    Compression mode                         : Lossy
    Compression mode                         : Lossy
    Stream size                              : 48314149
    Stream size                              : 46.1 MiB (18%)
    Stream size                              : 46 MiB
    Stream size                              : 46 MiB
    Stream size                              : 46.1 MiB
    Stream size                              : 46.08 MiB
    Stream size                              : 46.1 MiB (18%)
    Proportion of this stream                : 0.17717
    Tagged date                              : UTC 2012-09-25 07:21:37

    Moov atom info (/moov/trak[0] - video, /moov/trak[1] - audio) sample rate 44100 :
    (look stsz and stts nodes in trak)

    Atom ftyp @ 0 of size: 32, ends @ 32
    Atom moov @ 32 of size: 4230651, ends @ 4230683
        Atom mvhd @ 40 of size: 108, ends @ 148
        Atom trak @ 148 of size: 868970, ends @ 869118
            Atom tkhd @ 156 of size: 92, ends @ 248
            Atom edts @ 248 of size: 36, ends @ 284
                Atom elst @ 256 of size: 28, ends @ 284
            Atom mdia @ 284 of size: 868834, ends @ 869118
                Atom mdhd @ 292 of size: 32, ends @ 324
                Atom hdlr @ 324 of size: 45, ends @ 369
                Atom minf @ 369 of size: 868749, ends @ 869118
                    Atom vmhd @ 377 of size: 20, ends @ 397
                    Atom dinf @ 397 of size: 36, ends @ 433
                        Atom dref @ 405 of size: 28, ends @ 433
                    Atom stbl @ 433 of size: 868685, ends @ 869118
                        Atom stsd @ 441 of size: 149, ends @ 590
                            Atom avc1 @ 457 of size: 133, ends @ 590
                                Atom avcC @ 543 of size: 47, ends @ 590
                        Atom stts @ 590 of size: 24, ends @ 614
                        Atom stss @ 614 of size: 26340, ends @ 26954
                        Atom stsc @ 26954 of size: 52, ends @ 27006
                        Atom stsz @ 27006 of size: 785956, ends @ 812962
                        Atom stco @ 812962 of size: 56156, ends @ 869118
        Atom trak @ 869118 of size: 3361468, ends @ 4230586
            Atom tkhd @ 869126 of size: 92, ends @ 869218
            Atom edts @ 869218 of size: 36, ends @ 869254
                Atom elst @ 869226 of size: 28, ends @ 869254
            Atom mdia @ 869254 of size: 3361332, ends @ 4230586
                Atom mdhd @ 869262 of size: 32, ends @ 869294
                Atom hdlr @ 869294 of size: 45, ends @ 869339
                Atom minf @ 869339 of size: 3361247, ends @ 4230586
                    Atom smhd @ 869347 of size: 16, ends @ 869363
                    Atom dinf @ 869363 of size: 36, ends @ 869399
                        Atom dref @ 869371 of size: 28, ends @ 869399
                    Atom stbl @ 869399 of size: 3361187, ends @ 4230586
                        Atom stsd @ 869407 of size: 91, ends @ 869498
                            Atom mp4a @ 869423 of size: 75, ends @ 869498
                                Atom esds @ 869459 of size: 39, ends @ 869498
                        **Atom stts @ 869498 of size: 2135816, ends @ 3005314**
                        Atom stsc @ 3005314 of size: 39712, ends @ 3045026
                        **Atom stsz @ 3045026 of size: 1129400, ends @ 4174426**
                        Atom stco @ 4174426 of size: 56160, ends @ 4230586
        Atom udta @ 4230586 of size: 97, ends @ 4230683
            Atom meta @ 4230594 of size: 89, ends @ 4230683
                Atom hdlr @ 4230606 of size: 33, ends @ 4230639
                Atom ilst @ 4230639 of size: 44, ends @ 4230683
                    Atom ©too @ 4230647 of size: 36, ends @ 4230683
                        Atom data @ 4230655 of size: 28, ends @ 4230683
    Atom mdat @ 4230683 of size: 268473217, ends @ 272703900
    Atom free @ 272703900 of size: 8, ends @ 272703908
    Atom free @ 272703908 of size: 62, ends @ 272703970
    ------------------------------------------------------
    Total size: 272703970 bytes; 50 atoms total. AtomicParsley version: 0.9.0 (utf8)
    Media data: 268473217 bytes; 4230753 bytes all other atoms (1.551% atom overhead).
    Total free atom space: 70 bytes; 0.000% waste. Padding available: 0 bytes.
    ------------------------------------------------------

    After reencoding this movie with audio sample rate 11025 header size much less :

    Media info (audio sample rate = 11025) : (crop duplicate info)

    General
    ***
    HeaderSize                               : 1276359

    Video
    ***

    Audio
    Count                                    : 169
    Count of stream of this kind             : 1
    Kind of stream                           : Audio
    Kind of stream                           : Audio
    Stream identifier                        : 0
    ID                                       : 2
    ID                                       : 2
    Format                                   : AAC
    Format/Info                              : Advanced Audio Codec
    Commercial name                          : AAC
    Format profile                           : LC
    Codec ID                                 : 40
    Codec                                    : AAC LC
    Codec                                    : AAC LC
    Codec/Family                             : AAC
    Codec/CC                                 : 40
    Duration                                 : 6556132
    Duration                                 : 1h 49mn
    Duration                                 : 1h 49mn 16s 132ms
    Duration                                 : 1h 49mn
    Duration                                 : 01:49:16.132
    Bit rate mode                            : VBR
    Bit rate mode                            : Variable
    Bit rate                                 : 37991
    Bit rate                                 : 38.0 Kbps
    Maximum bit rate                         : 128000
    Maximum bit rate                         : 128 Kbps
    Channel(s)                               : 2
    Channel(s)                               : 2 channels
    Channel positions                        : Front: L R
    Channel positions                        : 2/0/0
    Sampling rate                            : 11025
    Sampling rate                            : 11.025 KHz
    Samples count                            : 72281355
    Compression mode                         : Lossy
    Compression mode                         : Lossy
    Stream size                              : 31134257
    Stream size                              : 29.7 MiB (12%)
    Stream size                              : 30 MiB
    Stream size                              : 30 MiB
    Stream size                              : 29.7 MiB
    Stream size                              : 29.69 MiB
    Stream size                              : 29.7 MiB (12%)
    Proportion of this stream                : 0.12327
    Tagged date                              : UTC 2012-09-25 13:20:28

    Moov atom info (/moov/trak[0] - video, /moov/trak[1] - audio) sample rate 11025 :

    Atom ftyp @ 0 of size: 32, ends @ 32
    Atom moov @ 32 of size: 1276327, ends @ 1276359
        Atom mvhd @ 40 of size: 108, ends @ 148
        Atom trak @ 148 of size: 821662, ends @ 821810
            Atom tkhd @ 156 of size: 92, ends @ 248
            Atom edts @ 248 of size: 36, ends @ 284
                Atom elst @ 256 of size: 28, ends @ 284
            Atom mdia @ 284 of size: 821526, ends @ 821810
                Atom mdhd @ 292 of size: 32, ends @ 324
                Atom hdlr @ 324 of size: 45, ends @ 369
                Atom minf @ 369 of size: 821441, ends @ 821810
                    Atom vmhd @ 377 of size: 20, ends @ 397
                    Atom dinf @ 397 of size: 36, ends @ 433
                        Atom dref @ 405 of size: 28, ends @ 433
                    Atom stbl @ 433 of size: 821377, ends @ 821810
                        Atom stsd @ 441 of size: 149, ends @ 590
                            Atom avc1 @ 457 of size: 133, ends @ 590
                                Atom avcC @ 543 of size: 47, ends @ 590
                        Atom stts @ 590 of size: 24, ends @ 614
                        Atom stss @ 614 of size: 26340, ends @ 26954
                        Atom stsc @ 26954 of size: 52, ends @ 27006
                        Atom stsz @ 27006 of size: 785956, ends @ 812962
                        Atom stco @ 812962 of size: 8848, ends @ 821810
        Atom trak @ 821810 of size: 454452, ends @ 1276262
            Atom tkhd @ 821818 of size: 92, ends @ 821910
            Atom edts @ 821910 of size: 36, ends @ 821946
                Atom elst @ 821918 of size: 28, ends @ 821946
            Atom mdia @ 821946 of size: 454316, ends @ 1276262
                Atom mdhd @ 821954 of size: 32, ends @ 821986
                Atom hdlr @ 821986 of size: 45, ends @ 822031
                Atom minf @ 822031 of size: 454231, ends @ 1276262
                    Atom smhd @ 822039 of size: 16, ends @ 822055
                    Atom dinf @ 822055 of size: 36, ends @ 822091
                        Atom dref @ 822063 of size: 28, ends @ 822091
                    Atom stbl @ 822091 of size: 454171, ends @ 1276262
                        Atom stsd @ 822099 of size: 91, ends @ 822190
                            Atom mp4a @ 822115 of size: 75, ends @ 822190
                                Atom esds @ 822151 of size: 39, ends @ 822190
                        Atom stts @ 822190 of size: 161368, ends @ 983558
                        Atom stsc @ 983558 of size: 1480, ends @ 985038
                        Atom stsz @ 985038 of size: 282372, ends @ 1267410
                        Atom stco @ 1267410 of size: 8852, ends @ 1276262
        Atom udta @ 1276262 of size: 97, ends @ 1276359
            Atom meta @ 1276270 of size: 89, ends @ 1276359
                Atom hdlr @ 1276282 of size: 33, ends @ 1276315
                Atom ilst @ 1276315 of size: 44, ends @ 1276359
                    Atom ©too @ 1276323 of size: 36, ends @ 1276359
                        Atom data @ 1276331 of size: 28, ends @ 1276359
    Atom mdat @ 1276359 of size: 251293325, ends @ 252569684
    Atom free @ 252569684 of size: 8, ends @ 252569692
    Atom free @ 252569692 of size: 62, ends @ 252569754
    ------------------------------------------------------
    Total size: 252569754 bytes; 50 atoms total. AtomicParsley version: 0.9.0 (utf8)
    Media data: 251293325 bytes; 1276429 bytes all other atoms (0.505% atom overhead).
    Total free atom space: 70 bytes; 0.000% waste. Padding available: 0 bytes.
    ------------------------------------------------------

    On slow connection this movie start playing after 30-40 seconds until header info (4.2 Mb) downloading. I need that movie start playing fast as it possible. And i have next questions :

    1. How reduce size of movie header ?

    2. How reduce size of
      /moov[0]/trak[1]/mdia[0]/minf[0]/stbl[0] and why it so big when
      sample rate 44100 ?

  • ffmpeg conversion : Twitter rejects video with "Not valid video"

    12 février 2020, par DeadlyBacon

    I have an app that uploads via twitter api chunked upload, and it finally works with photos.

    However, I am trying to get it to work with videos.

    Uploading didnt work out-of-the-box even though the video format is mp4. The twitter guidelines for uploads are these

    With that in mind, I have this ffmpeg command so far :

    ffmpeg -i in.mp4  -vf \"scale=1280:720\" -b:v 5000K -minrate 5000K -maxrate 5000K -b:a 128K -r 30 -f mp4 -vcodec libx264 -profile:v high -pix_fmt yuv420p -strict -2  -ac 2 -acodec aac out.mp4

    I still get "Not valid video", and I don’t know why.

    Here’s my mediainfo output for out.mp4 :

    General
    Count                                    : 328
    Count of stream of this kind             : 1
    Kind of stream                           : General
    Kind of stream                           : General
    Stream identifier                        : 0
    Count of video streams                   : 1
    Count of audio streams                   : 1
    Video_Format_List                        : AVC
    Video_Format_WithHint_List               : AVC
    Codecs Video                             : AVC
    Video_Language_List                      : English
    Audio_Format_List                        : AAC
    Audio_Format_WithHint_List               : AAC
    Audio codecs                             : AAC LC
    Audio_Language_List                      : English
    Complete name                            : video-5e4405cd4348a5e4405cd434d2.mp4
    File name                                : video-5e4405cd4348a5e4405cd434d2
    File extension                           : mp4
    Format                                   : MPEG-4
    Format                                   : MPEG-4
    Format/Extensions usually used           : mov mp4 m4v m4a m4b m4p 3ga 3gpa 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma ismt f4a f4b f4v
    Commercial name                          : MPEG-4
    Format profile                           : Base Media
    Internet media type                      : video/mp4
    Codec ID                                 : isom
    Codec ID                                 : isom (isom/iso2/avc1/mp41)
    Codec ID/Url                             : http://www.apple.com/quicktime/download/standalone.html
    CodecID_Compatible                       : isom/iso2/avc1/mp41
    Codec                                    : MPEG-4
    Codec                                    : MPEG-4
    Codec/Extensions usually used            : mov mp4 m4v m4a m4b m4p 3ga 3gpa 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma ismt f4a f4b f4v
    File size                                : 52664272
    File size                                : 50.2 MiB
    File size                                : 50 MiB
    File size                                : 50 MiB
    File size                                : 50.2 MiB
    File size                                : 50.22 MiB
    Duration                                 : 79744
    Duration                                 : 1 min 19 s
    Duration                                 : 1 min 19 s 744 ms
    Duration                                 : 1 min 19 s
    Duration                                 : 00:01:19.744
    Duration                                 : 00:01:19:20
    Duration                                 : 00:01:19.744 (00:01:19:20)
    Overall bit rate                         : 5283334
    Overall bit rate                         : 5 283 kb/s
    Frame rate                               : 30.000
    Frame rate                               : 30.000 FPS
    Frame count                              : 2390
    Stream size                              : 88780
    Stream size                              : 86.7 KiB (0%)
    Stream size                              : 87 KiB
    Stream size                              : 87 KiB
    Stream size                              : 86.7 KiB
    Stream size                              : 86.70 KiB
    Stream size                              : 86.7 KiB (0%)
    Proportion of this stream                : 0.00169
    HeaderSize                               : 40
    DataSize                                 : 52575500
    FooterSize                               : 88732
    IsStreamable                             : No
    File last modification date              : UTC 2020-02-12 14:05:37
    File last modification date (local)      : 2020-02-12 15:05:37
    Writing application                      : Lavf57.83.100
    Writing application                      : Lavf57.83.100

    Video
    Count                                    : 342
    Count of stream of this kind             : 1
    Kind of stream                           : Video
    Kind of stream                           : Video
    Stream identifier                        : 0
    StreamOrder                              : 0
    ID                                       : 1
    ID                                       : 1
    Format                                   : AVC
    Format/Info                              : Advanced Video Codec
    Format/Url                               : http://developers.videolan.org/x264.html
    Commercial name                          : AVC
    Format profile                           : High@L3.1
    Format settings                          : CABAC / 4 Ref Frames
    Format settings, CABAC                   : Yes
    Format settings, CABAC                   : Yes
    Format settings, ReFrames                : 4
    Format settings, ReFrames                : 4 frames
    Internet media type                      : video/H264
    Codec ID                                 : avc1
    Codec ID/Info                            : Advanced Video Coding
    Codec                                    : AVC
    Codec                                    : AVC
    Codec/Family                             : AVC
    Codec/Info                               : Advanced Video Codec
    Codec/Url                                : http://developers.videolan.org/x264.html
    Codec/CC                                 : avc1
    Codec profile                            : High@L3.1
    Codec settings                           : CABAC / 4 Ref Frames
    Codec settings, CABAC                    : Yes
    Codec_Settings_RefFrames                 : 4
    Duration                                 : 79667
    Duration                                 : 1 min 19 s
    Duration                                 : 1 min 19 s 667 ms
    Duration                                 : 1 min 19 s
    Duration                                 : 00:01:19.667
    Duration                                 : 00:01:19:20
    Duration                                 : 00:01:19.667 (00:01:19:20)
    Bit rate                                 : 5000000
    Bit rate                                 : 5 000 kb/s
    Width                                    : 1280
    Width                                    : 1 280 pixels
    Height                                   : 720
    Height                                   : 720 pixels
    Sampled_Width                            : 1280
    Sampled_Height                           : 720
    Pixel aspect ratio                       : 1.000
    Display aspect ratio                     : 1.778
    Display aspect ratio                     : 16:9
    Rotation                                 : 0.000
    Frame rate mode                          : CFR
    Frame rate mode                          : Constant
    FrameRate_Mode_Original                  : VFR
    Frame rate                               : 30.000
    Frame rate                               : 30.000 FPS
    Frame count                              : 2390
    Resolution                               : 8
    Resolution                               : 8 bits
    Colorimetry                              : 4:2:0
    Color space                              : YUV
    Chroma subsampling                       : 4:2:0
    Chroma subsampling                       : 4:2:0
    Bit depth                                : 8
    Bit depth                                : 8 bits
    Scan type                                : Progressive
    Scan type                                : Progressive
    Interlacement                            : PPF
    Interlacement                            : Progressive
    Bits/(Pixel*Frame)                       : 0.181
    Stream size                              : 51297022
    Stream size                              : 48.9 MiB (97%)
    Stream size                              : 49 MiB
    Stream size                              : 49 MiB
    Stream size                              : 48.9 MiB
    Stream size                              : 48.92 MiB
    Stream size                              : 48.9 MiB (97%)
    Proportion of this stream                : 0.97404
    Writing library                          : x264 - core 152 r2854 e9a5903
    Writing library                          : x264 core 152 r2854 e9a5903
    Encoded_Library_Name                     : x264
    Encoded_Library_Version                  : core 152 r2854 e9a5903
    Encoding settings                        : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=abr / mbtree=1 / bitrate=5000 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00
    Language                                 : en
    Language                                 : English
    Language                                 : English
    Language                                 : en
    Language                                 : eng
    Language                                 : en

    Audio
    Count                                    : 275
    Count of stream of this kind             : 1
    Kind of stream                           : Audio
    Kind of stream                           : Audio
    Stream identifier                        : 0
    StreamOrder                              : 1
    ID                                       : 2
    ID                                       : 2
    Format                                   : AAC
    Format/Info                              : Advanced Audio Codec
    Commercial name                          : AAC
    Format profile                           : LC
    Format settings, SBR                     : No (Explicit)
    Format settings, SBR                     : No (Explicit)
    Codec ID                                 : mp4a-40-2
    Codec                                    : AAC LC
    Codec                                    : AAC LC
    Codec/Family                             : AAC
    Codec/CC                                 : 40
    Duration                                 : 79744
    Duration                                 : 1 min 19 s
    Duration                                 : 1 min 19 s 744 ms
    Duration                                 : 1 min 19 s
    Duration                                 : 00:01:19.744
    Duration                                 : 00:01:19:25
    Duration                                 : 00:01:19.744 (00:01:19:25)
    Bit rate mode                            : CBR
    Bit rate mode                            : Constant
    Bit rate                                 : 128257
    Bit rate                                 : 128 kb/s
    Channel(s)                               : 2
    Channel(s)                               : 2 channels
    Channel positions                        : Front: L R
    Channel positions                        : 2/0/0
    ChannelLayout                            : L R
    Samples per frame                        : 1024
    Sampling rate                            : 48000
    Sampling rate                            : 48.0 kHz
    Samples count                            : 3827712
    Frame rate                               : 46.875
    Frame rate                               : 46.875 FPS (1024 SPF)
    Frame count                              : 3738
    Compression mode                         : Lossy
    Compression mode                         : Lossy
    Stream size                              : 1278470
    Stream size                              : 1.22 MiB (2%)
    Stream size                              : 1 MiB
    Stream size                              : 1.2 MiB
    Stream size                              : 1.22 MiB
    Stream size                              : 1.219 MiB
    Stream size                              : 1.22 MiB (2%)
    Proportion of this stream                : 0.02428
    Language                                 : en
    Language                                 : English
    Language                                 : English
    Language                                 : en
    Language                                 : eng
    Language                                 : en
    Default                                  : Yes
    Default                                  : Yes
    Alternate group                          : 1
    Alternate group                          : 1

    Edit : Guess Ill add my PHP code too (This is chopped in a sensible manner because the actual file is very large) :

    // Set up Codebird
    \Codebird\Codebird::setConsumerKey($consumer_key, $consumer_secret); // static, see README

    $cb = \Codebird\Codebird::getInstance();

    $cb->setToken($token, $token_secret);
    $cb->setTimeout(60 * 1000); // 60 second request timeout

     $video = new Video($path);

       // Convert to the parameter required by twitter.
       $converted = $video->convert();

       $path = realpath('videos/' . $converted);

       $file = fopen($path, 'rb');

       $size = fstat($file)['size'];
       $mime_type = mime_content_type($path);

       $media = $cb->media_upload([
         'command' => 'INIT',
         'media_type' => $mime_type,
       'media_category' => 'tweet_video',
         'total_bytes' => $size,
       ]);

    $success = $media->httpstatus >= 200 && $media->httpstatus < 300; # 2xx

     if (!$success) {
       throw new TwitterException("Failed to INIT upload for $path...");
     }


     // APPEND chunks to upload.
     $mediaId = $media->media_id_string;
     $segmentId = 0;

     while (!feof($file)) {
       echo "chunk #$segmentId....";

       $chunk = fread($file, 512 * 1024); // caps out at 512 MB

       echo "chunk size: ". strlen($chunk);

       $media = $cb->media_upload([
         'command' => 'APPEND',
         'media_id' => $mediaId,
         'segment_index' => $segmentId,
         'media' => $chunk,
       ]);

       $success = $media->httpstatus >= 200 && $media->httpstatus < 300; # 2xx

       if (!$success) {
         throw new TwitterException("Failed to APPEND to upload for $path, chunk $segmentId...");
       }

       $segmentId++;
     }
     // Close file and FINALIZE upload.
     fclose($file);

    echo "FINALIZING id $mediaId...";
     $media = $cb->media_upload([
         'command' => 'FINALIZE',
         'media_id' => $mediaId,
     ]);

     $success = $media->httpstatus >= 200 && $media->httpstatus < 300; # 2xx

     if (!$success) {
       var_dump($media);
       throw new TwitterException("Failed to FINALIZE upload for $path...");
     }

     return $mediaId;

    Video is my ffmpeg class, which I’ll paste below, and $path is a URL leading to a perfectly valid mp4 video.

    Video.php :

    <?php

    class VideoConversionException extends \Exception {}

    class Video {
     public $name;
     public $converted;


     public function __construct($name) {
       self::clear();

       $this->name = $name;
     }


     public function convert() {
       $tmpVideo = 'video-' . uniqid() . uniqid() . '.mp4';
       $videoPath = 'videos/' . $tmpVideo;

       //$ffmpeg = "ffmpeg -i https://tvcanarias.acfipress.com/BC_190907_gc_teror.mp4  -vf "scale=1280:720" -b:v 5000K -b:a 128K -r 30 -f mp4 -vcodec libx264 -acodec aac output_video.mp4";
       $ffmpeg = "ffmpeg -i {$this->name}  -vf \"scale=1280:720\" -b:v 5000K -minrate 5000K -maxrate 5000K -b:a 128K -r 30 -f mp4 -vcodec libx264 -profile:v high -pix_fmt yuv420p -strict -2  -ac 2 -acodec aac $videoPath";
       //$ffmpeg = "ffmpeg -i {$this->name} -pix_fmt yuv420p -vcodec libx264 -vf scale=640:-1 -acodec aac -vb 1024k -minrate 1024k -maxrate 1024k -bufsize 1024k -ar 44100  -ac 2  -strict experimental -r 30 $videoPath";
       $output = [];
       exec($ffmpeg, $output, $status);

       if ($status != 0) {
         //die("Couldnt run ffmpeg. (Error code: #$status)");
         throw new VideoConversionException("Couldn't run ffmpeg. (Error code: #$status)");
       }

       $this->converted = $tmpVideo;
       return $tmpVideo;
     }

     public function shredConverted() {
       // delete video.
       @unlink("videos/{$this->$converted}");
     }

     public static function clear() {
       // We can't really shred videos right away as they might be still uploading.
       // Therefore, every time this library is used, we will just delete videos older
       // than, say, an hour.

       $files = scandir('videos');

       $curtime = time();

       foreach ($files as $file) {
         if ($file == '.gitignore' || $file == '.' || $file == '..') {
           continue;
         }

         $mtime = filemtime("videos/$file");

         $diff = $curtime - $mtime;
         $overAnHour = $diff > (60 * 60);

         if ($overAnHour) {
           @unlink("videos/$file");
         }
       }
     }
    }
  • The new GDPR data protection regulation and potential consequences on Piwik

    7 septembre 2017, par Piwik Core Team — About, Privacy

    GDPR is a new data protection related regulation in Europe. GDPR stands for General Data Protection Regulation.

    The purpose of this European regulation is to strengthen and unify data protection for all individuals within the European Union. This also includes entities outside Europe willing to do business with European citizens. GDPR is a set of processes you need to follow within your organization to protect the privacy of European citizens.

    GDPR will start to apply in May 2018. It is recognized to be dissuasive because of the potential penalty of up to 4% of the yearly turnover, in case of infringement.

    Many articles have been written about GDPR including our previous article. Few of them are explaining how it will affect web analytics vendors : this is what this article is about.

    Am I really impacted by GDPR if I am a Piwik user ?

    As Piwik can collect personal data, the answer is yes. Piwik analytics data is impacted by the GDPR.

    As GDPR is a general concept, we decided from the official guidelines to assume what will be the potential consequences on the use of Piwik.

    There are 2 potential scenarios we can identify :

    • 1 – You are collecting personal data with Piwik
    • 2 – You are not collecting personal data with Piwik

    1 – Personal data collection with Piwik

    According to GDPR : IP addresses, cookies, UserID are personal data.

    IP addresses are personal data, so you will have to anonymize them unless you receive explicit consent from the visitor. Please view the following article in order to learn : how can I anonymize IP addresses in Piwik ?

    According to GDPR, cookies are personal data too. But as all cookies are not created equal it may be possible that some need to require user consent whereas other not. Whatever will be the final decision, you can learn about the first-party cookies created by Piwik and how to disable all tracking cookies in Piwik ?

    User ID, you are impacted if the User ID you assign is specific to an individual or if you can cross the User ID data further and find back the individual personal data.

    Any extra personal data you may collect with Piwik, it could be for example : first names, family names, e-mail address… You are able to collect such data using custom dimensions, custom variables…

    What are the rules I have to comply with ?

    By collecting personal data, you will have to respect EU citizens rights, which include :

    • The possibility for them to view the data you collected on them
    • The possibility to rectify some data concerning them
    • The possibility to delete their data when they request about it

    As you can imagine, for the first obligation, you will have to export all the data. So if a user is requesting it, you will have to export the data linked to his IP address(es). It can be easily exported as a .csv file for example.
    In order to do that, just create a segment according to the IP address of the user who requested it and then export the “Visitor log” report.
    If the personal data is not linked with the IP address but other attributes such as User ID or a custom dimension, you can provide the same data export by using the segment function and filtering on the personal data field.

    The data edit and deletion process on Piwik is a bit trickier as it currently requires administration system skills. We are planning to develop a new plugin for GDPR compliance (which will be available for free on the Marketplace). This plugin will let you edit and easily delete data of a particular user. Currently you can delete a specific user’s data by accessing the Piwik database and directly delete the different records for this specific user.

    2 – You are not collecting personal data with Piwik

    Unfortunately it is not because you do not collect personal data that you will not be affected by GDPR.
    The details of GDPR are not confirmed yet and GDPR could involve enabling the DoNotTrack setting by default on all browsers.
    Yes, you read it well, by default, unless the internet user uncheck this option, Piwik respecting DoNoTrack would not be able to track any user. If one needed to collect data anyway, Piwik Log Analytics and server-side tracking can be considered.

    If you need help regarding how to set up your Piwik installation in order to be GDPR compliant :

    Do you have a Piwik experience you would like to share with the community ? Please share it with us by contacting Piwik core team.