
Recherche avancée
Autres articles (48)
-
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
Encoding and processing into web-friendly formats
13 avril 2011, parMediaSPIP automatically converts uploaded files to internet-compatible formats.
Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
All uploaded files are stored online in their original format, so you can (...) -
Ajouter notes et légendes aux images
7 février 2011, parPour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
Modification lors de l’ajout d’un média
Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)
Sur d’autres sites (11431)
-
Can't convert .ts files that downloaded with from .m3u8 file to mp4
28 juillet 2022, par smartnimaI Have This Files :


001.ts 014.ts 027.ts 040.ts 053.ts 066.ts 079.ts 092.ts 105.ts 118.ts 131.ts 144.ts 157.ts 170.ts 183.ts 196.ts 209.ts 222.ts 235.ts 248.ts 261.ts 274.ts 287.ts 300.ts 313.ts 326.ts
002.ts 015.ts 028.ts 041.ts 054.ts 067.ts 080.ts 093.ts 106.ts 119.ts 132.ts 145.ts 158.ts 171.ts 184.ts 197.ts 210.ts 223.ts 236.ts 249.ts 262.ts 275.ts 288.ts 301.ts 314.ts 327.ts
003.ts 016.ts 029.ts 042.ts 055.ts 068.ts 081.ts 094.ts 107.ts 120.ts 133.ts 146.ts 159.ts 172.ts 185.ts 198.ts 211.ts 224.ts 237.ts 250.ts 263.ts 276.ts 289.ts 302.ts 315.ts 328.ts
004.ts 017.ts 030.ts 043.ts 056.ts 069.ts 082.ts 095.ts 108.ts 121.ts 134.ts 147.ts 160.ts 173.ts 186.ts 199.ts 212.ts 225.ts 238.ts 251.ts 264.ts 277.ts 290.ts 303.ts 316.ts 329.ts
005.ts 018.ts 031.ts 044.ts 057.ts 070.ts 083.ts 096.ts 109.ts 122.ts 135.ts 148.ts 161.ts 174.ts 187.ts 200.ts 213.ts 226.ts 239.ts 252.ts 265.ts 278.ts 291.ts 304.ts 317.ts 330.ts
006.ts 019.ts 032.ts 045.ts 058.ts 071.ts 084.ts 097.ts 110.ts 123.ts 136.ts 149.ts 162.ts 175.ts 188.ts 201.ts 214.ts 227.ts 240.ts 253.ts 266.ts 279.ts 292.ts 305.ts 318.ts 331.ts
007.ts 020.ts 033.ts 046.ts 059.ts 072.ts 085.ts 098.ts 111.ts 124.ts 137.ts 150.ts 163.ts 176.ts 189.ts 202.ts 215.ts 228.ts 241.ts 254.ts 267.ts 280.ts 293.ts 306.ts 319.ts 332.ts
008.ts 021.ts 034.ts 047.ts 060.ts 073.ts 086.ts 099.ts 112.ts 125.ts 138.ts 151.ts 164.ts 177.ts 190.ts 203.ts 216.ts 229.ts 242.ts 255.ts 268.ts 281.ts 294.ts 307.ts 320.ts 333.ts
009.ts 022.ts 035.ts 048.ts 061.ts 074.ts 087.ts 100.ts 113.ts 126.ts 139.ts 152.ts 165.ts 178.ts 191.ts 204.ts 217.ts 230.ts 243.ts 256.ts 269.ts 282.ts 295.ts 308.ts 321.ts 334.ts
010.ts 023.ts 036.ts 049.ts 062.ts 075.ts 088.ts 101.ts 114.ts 127.ts 140.ts 153.ts 166.ts 179.ts 192.ts 205.ts 218.ts 231.ts 244.ts 257.ts 270.ts 283.ts 296.ts 309.ts 322.ts
011.ts 024.ts 037.ts 050.ts 063.ts 076.ts 089.ts 102.ts 115.ts 128.ts 141.ts 154.ts 167.ts 180.ts 193.ts 206.ts 219.ts 232.ts 245.ts 258.ts 271.ts 284.ts 297.ts 310.ts 323.ts
012.ts 025.ts 038.ts 051.ts 064.ts 077.ts 090.ts 103.ts 116.ts 129.ts 142.ts 155.ts 168.ts 181.ts 194.ts 207.ts 220.ts 233.ts 246.ts 259.ts 272.ts 285.ts 298.ts 311.ts 324.ts
013.ts 026.ts 039.ts 052.ts 065.ts 078.ts 091.ts 104.ts 117.ts 130.ts 143.ts 156.ts 169.ts 182.ts 195.ts 208.ts 221.ts 234.ts 247.ts 260.ts 273.ts 286.ts 299.ts 312.ts 325.ts



That I Downloaded With This Python Program (m3u8 File Does Not Work !) :


import requests
import shutil
import os
import subprocess


def strip_end(text, suffix):
 if not text.endswith(suffix):
 return text
 return text[:len(text)-len(suffix)]


def download_file(url):
 cwd = os.getcwd()
 command = f"wget -O {cwd}/ts_files/{url.split('/')[-1]} {url}"
 subprocess.call(command, shell=True)


base_url = "https://stream.example.com/video/2021/example/720p_{}.ts"

if not os.path.exists('ts_files'):
 print('ts_file folder is not found, creating the folder.')
 os.makedirs('ts_files')

i = 1
while True:
 if len(str(i)) == 1:
 num = f"00{i}"
 elif len(str(i)) == 2:
 num = f"0{i}"
 else:
 num = str(i)
 url = base_url.replace("{}", num)
 r = requests.get(url, stream=True)
 print(f'downloading {i}')
 if r.status_code != 404:
 download_file(url) # comment out this line to download ts files.
 else:
 print("404")
 break
 i = i+1

cwd = os.getcwd() # Get the current working directory (cwd)
TS_DIR = 'ts_files'
with open('merged.ts', 'wb') as merged:
 for ts_file in os.listdir(f'{cwd}/{TS_DIR}'):
 with open(f'{cwd}/{TS_DIR}/{ts_file}', 'rb') as mergefile:
 shutil.copyfileobj(mergefile, merged)




My Problem Is When I Want To Convert All This Files To One .ts File And Then An MP4 File With ffmpeg, I Get An Error :


nima@funlife:~/ts_files$ cat ./*.ts > all.ts
nima@funlife:~/ts_files$ ffmpeg -i all.ts -acodec copy -vcodec copy all.mp4
ffmpeg version 5.0.1-3+b1 Copyright (c) 2000-2022 the FFmpeg developers
 built with gcc 11 (Debian 11.3.0-4)
 configuration: --prefix=/usr --extra-version=3+b1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --disable-sndio --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libplacebo --enable-libx264 --enable-shared
 libavutil 57. 17.100 / 57. 17.100
 libavcodec 59. 18.100 / 59. 18.100
 libavformat 59. 16.100 / 59. 16.100
 libavdevice 59. 4.100 / 59. 4.100
 libavfilter 8. 24.100 / 8. 24.100
 libswscale 6. 4.100 / 6. 4.100
 libswresample 4. 3.100 / 4. 3.100
 libpostproc 56. 3.100 / 56. 3.100
all.ts: Invalid data found when processing input



.ts Files Content Is Like This :


}��,.g���}��
 �����c����Ww�c���c���eo��m�����ŧ� 䱉
�b(+��D�FG�zPe��7�&#bz�1ɶ��� C
�`,��>Ϲc4J��̀��T�I}�"��ކ�R�1��w͋� "� <�#B`ƪ�̸�co
 �9���+��W�
P���N���w��T\5g��
\�E�N�E�v��͑4f��U�@]�ΩX�U�x�E��bwm=ְ�iA�����p���M�����\=�_�I3C�hL�h����0)�ο��*��`���eZ� �ؗ4To�0V��S,�+�>�8_]�W�lNJD�|7e�2s�1X)̃5�0h�������~8ߩg���?e��EK�>۷�L
 ��:6|������>\ �N�WW��,�w
bk��1?*��/��/�5��k����~�� Lޕ}�a���2�{��l��$�d=����g�{a2��L�����
 jҫַ��ʿ�"1`ZZ.he)�=�x��E_4:Vg�����H=���x1�����}��W::y�



Are They Encrypted Or Something ?
I'm Trying To Do This Works With Debian 11.3.0-4, Python 3.10.5


-
How Can I Copy Encoder and Metadata from Another Video
27 juillet 2022, par Alper CanI have a video, generated with Opencv.
I want make video metadata and encoder settings like another video. How can I make it ?


My video :

ffmpeg output :



Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output/fixed.mp4' :

Metadata :

compatible_brands : isommp42

major_brand : mp42

minor_version : 0

creation_time : 2022-03-03T19:12:13.000000Z

com.android.version : 11

encoder : Lavf59.16.100

Duration : 00:00:06.00, start : 0.000000, bitrate : 6683 kb/s

Stream #0:00x1 : Video : h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p(progressive), 640x480 [SAR 1:1 DAR 4:3], 6681 kb/s, 30.03 fps, 30.03 tbr, 30030 tbn (default)

Metadata :

creation_time : 2022-03-03T19:12:13.000000Z

handler_name : VideoHandler

vendor_id : [0][0][0][0]

Side data :

displaymatrix : rotation of 90.00 degrees



Media Info output :




General

Complete name : fixed.mp4

Format : MPEG-4

Format profile : Base Media

Codec ID : isom (isom/iso2/avc1/mp41)

File size : 4.78 MiB

Duration : 5 s 995 ms

Overall bit rate : 6 683 kb/s

Encoded date : UTC 2022-03-03 19:12:13

Tagged date : UTC 2022-03-03 19:12:13



Video

ID : 1

Format : AVC

Format/Info : Advanced Video Codec

Format profile : Baseline@L3

Format settings : 1 Ref Frames

Format settings, CABAC : No

Format settings, Reference frames : 1 frame

Codec ID : avc1

Codec ID/Info : Advanced Video Coding

Duration : 5 s 995 ms

Bit rate : 6 682 kb/s

Width : 640 pixels

Height : 480 pixels

Display aspect ratio : 4:3

Rotation : 270°

Frame rate mode : Constant

Frame rate : 30.000 FPS

Color space : YUV

Chroma subsampling : 4:2:0

Bit depth : 8 bits

Scan type : Progressive

Bits/(Pixel*Frame) : 0.725

Stream size : 4.77 MiB (100%)

Encoded date : UTC 2022-03-03 19:12:13

Tagged date : UTC 2022-03-03 19:12:13

Codec configuration box : avcC



I want change it like this :

ffmpeg output :



Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output/source_encoder/video.mp4' :

Metadata :

major_brand : mp42

minor_version : 0

compatible_brands : isommp42

creation_time : 2022-03-03T19:12:13.000000Z

com.android.version : 11

Duration : 00:00:04.83, start : 0.000000, bitrate : 1020 kb/s

Stream #0:00x1 : Video : h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 640x480, 1016 kb/s, SAR 1:1 DAR 4:3, 30.03 fps, 30 tbr, 90k tbn (default)

Metadata :

creation_time : 2022-03-03T19:12:13.000000Z

handler_name : VideoHandle

vendor_id : [0][0][0][0]

Side data :

displaymatrix : rotation of 90.00 degrees



Media Info Output :




General

Complete name : source_encoder/video.mp4

Format : MPEG-4

Format profile : Base Media / Version 2

Codec ID : mp42 (isom/mp42)

File size : 601 KiB

Duration : 4 s 828 ms

Overall bit rate : 1 020 kb/s

Encoded date : UTC 2022-03-03 19:12:13

Tagged date : UTC 2022-03-03 19:12:13

com.android.version : 11



Video

ID : 1

Format : AVC

Format/Info : Advanced Video Codec

Format profile : High@L3

Format settings : CABAC / 1 Ref Frames

Format settings, CABAC : Yes

Format settings, Reference frames : 1 frame

Format settings, GOP : M=1, N=30

Codec ID : avc1

Codec ID/Info : Advanced Video Coding

Duration : 4 s 828 ms

Bit rate : 1 016 kb/s

Width : 640 pixels

Height : 480 pixels

Display aspect ratio : 4:3

Rotation : 270°

Frame rate mode : Variable

Frame rate : 30.000 FPS

Minimum frame rate : 30.000 FPS

Maximum frame rate : 30.060 FPS

Color space : YUV

Chroma subsampling : 4:2:0

Bit depth : 8 bits

Scan type : Progressive

Bits/(Pixel*Frame) : 0.110

Stream size : 599 KiB (100%)

Title : VideoHandle

Language : English

Encoded date : UTC 2022-03-03 19:12:13

Tagged date : UTC 2022-03-03 19:12:13

Color range : Limited

Color primaries : BT.709

Transfer characteristics : BT.709

Matrix coefficients : BT.709

mdhd_Duration : 4828

Codec configuration box : avcC



-
FFmpeg avutil.lib unresolved external symbol
2 août 2022, par Serei'm trying to use FFmpeg with visual sudio 2022 .NET 6 through an MSVC project.
I followed this tutorial : https://www.youtube.com/watch?v=qMNr1Su-nR8&ab_channel=HakanSoyalp.
I mean I have configureg Include (.h) file, library (.lib) files and dynamic (.dll) file copied into bin folder.
If I call for example the avformat_alloc_context() method inside the avformat.lib all work rightly, if I call for example av_file_map(...) inside the avutil.lib the compiler give me an error :
LNK2019 unresolved external symbol "int __cdecl av_file_map ...
But the avutil.lib is linked !!!
The same happen if I call other methods inside avutil.lib module.


Thanks for help...


Code :


extern "C"
{
 #include <libavformat></libavformat>avformat.h>
 #include <libavutil></libavutil>file.h> // av_file_map
}

int ConvertJPEGtoNALs(int argc, char* argv[])
{
 AVFormatContext* fmt_ctx = NULL;
 AVIOContext* avio_ctx = NULL;
 uint8_t* buffer = NULL, * avio_ctx_buffer = NULL;
 size_t buffer_size, avio_ctx_buffer_size = 4096;
 char* input_filename = NULL;
 int ret = 0;
 struct buffer_data bd = { 0 };
 if (argc != 2) {
 fprintf(stderr, "usage: %s input_file\n"
 "API example program to show how to read from a custom buffer "
 "accessed through AVIOContext.\n", argv[0]);
 return 1;
 }
 input_filename = argv[1];
 /* register codecs and formats and other lavf/lavc components*/
 //av_register_all(); //!deprecated
 /* slurp file content into buffer */
 ret = av_file_map(input_filename, &buffer, &buffer_size, 0, NULL);
 /* fill opaque structure used by the AVIOContext read callback */
 bd.ptr = buffer;
 bd.size = buffer_size; ???
 if (!(fmt_ctx = avformat_alloc_context())) {
 ret = AVERROR(ENOMEM);
 goto end;
 }
 //... to be continue ...
}