
Recherche avancée
Autres articles (81)
-
Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs
12 avril 2011, parLa manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras. -
Problèmes fréquents
10 mars 2010, parPHP et safe_mode activé
Une des principales sources de problèmes relève de la configuration de PHP et notamment de l’activation du safe_mode
La solution consiterait à soit désactiver le safe_mode soit placer le script dans un répertoire accessible par apache pour le site -
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)
Sur d’autres sites (11949)
-
Difference in audio sample size between AVCodecContext->frame_size and AVFrame->nb_samples
20 mars 2021, par Abhinav SinghI am playing with ffmpeg to understand audio data, but I see there is a difference between audio data,
AVCodecContext->frame_size
shows it to be 1152, but the value I get fromAVFrame->nb_samples
shows it to be 47. Both data fields describes the same thing i.e no of samples in an audio frame per channel, then why is there a difference. For reference I m pasting the AVFrame and AVCodecContext Object, which are huge, but also it will give you any information you wanted

AVCodecContext


{av_class = 0x7ffff74e24c0, log_level_offset = 0, codec_type = AVMEDIA_TYPE_AUDIO, codec = 0x7ffff751c600, codec_id = AV_CODEC_ID_MP3, codec_tag = 0, priv_data = 0x5555555ac040, 
 internal = 0x5555555a0e40, opaque = 0x0, bit_rate = 96000, bit_rate_tolerance = 0, global_quality = 0, compression_level = -1, flags = 0, flags2 = 0, extradata = 0x0, extradata_size = 0, time_base = {
 num = 1, den = 32000}, ticks_per_frame = 1, delay = 0, width = 0, height = 0, coded_width = 0, coded_height = 0, gop_size = 0, pix_fmt = AV_PIX_FMT_NONE, draw_horiz_band = 0x0, get_format = 
 0x7ffff69ae940 , max_b_frames = 0, b_quant_factor = 0, b_frame_strategy = 0, b_quant_offset = 0, has_b_frames = 0, mpeg_quant = 0, i_quant_factor = 0, 
 i_quant_offset = 0, lumi_masking = 0, temporal_cplx_masking = 0, spatial_cplx_masking = 0, p_masking = 0, dark_masking = 0, slice_count = 0, prediction_method = 0, slice_offset = 0x0, 
 sample_aspect_ratio = {num = 0, den = 1}, me_cmp = 0, me_sub_cmp = 0, mb_cmp = 0, ildct_cmp = 0, dia_size = 0, last_predictor_count = 0, pre_me = 0, me_pre_cmp = 0, pre_dia_size = 0, 
 me_subpel_quality = 0, me_range = 0, slice_flags = 0, mb_decision = 0, intra_matrix = 0x0, inter_matrix = 0x0, scenechange_threshold = 0, noise_reduction = 0, intra_dc_precision = 0, skip_top = 0, 
 skip_bottom = 0, mb_lmin = 0, mb_lmax = 0, me_penalty_compensation = 0, bidir_refine = 0, brd_scale = 0, keyint_min = 0, refs = 0, chromaoffset = 0, mv0_threshold = 0, b_sensitivity = 0, 
 color_primaries = AVCOL_PRI_RESERVED0, color_trc = AVCOL_TRC_RESERVED0, colorspace = AVCOL_SPC_RGB, color_range = AVCOL_RANGE_UNSPECIFIED, chroma_sample_location = AVCHROMA_LOC_UNSPECIFIED, 
 slices = 0, field_order = AV_FIELD_UNKNOWN, sample_rate = 32000, channels = 2, sample_fmt = AV_SAMPLE_FMT_FLTP, frame_size = 1152, frame_number = 1, block_align = 0, cutoff = 0, channel_layout = 3, 
 request_channel_layout = 0, audio_service_type = AV_AUDIO_SERVICE_TYPE_MAIN, request_sample_fmt = AV_SAMPLE_FMT_NONE, get_buffer2 = 0x7ffff69af1d0 , 
 refcounted_frames = 0, qcompress = 0, qblur = 0, qmin = 0, qmax = 0, max_qdiff = 0, rc_buffer_size = 0, rc_override_count = 0, rc_override = 0x0, rc_max_rate = 0, rc_min_rate = 0, 
 rc_max_available_vbv_use = 0, rc_min_vbv_overflow_use = 0, rc_initial_buffer_occupancy = 0, coder_type = 0, context_model = 0, frame_skip_threshold = 0, frame_skip_factor = 0, frame_skip_exp = 0, 
 frame_skip_cmp = 0, trellis = 0, min_prediction_order = -1, max_prediction_order = -1, timecode_frame_start = 0, rtp_callback = 0x0, rtp_payload_size = 0, mv_bits = 0, header_bits = 0, 
 i_tex_bits = 0, p_tex_bits = 0, i_count = 0, p_count = 0, skip_count = 0, misc_bits = 0, frame_bits = 0, stats_out = 0x0, stats_in = 0x0, workaround_bugs = 0, strict_std_compliance = 0, 
 error_concealment = 0, debug = 0, err_recognition = 0, reordered_opaque = -9223372036854775808, hwaccel = 0x0, hwaccel_context = 0x0, error = {0, 0, 0, 0, 0, 0, 0, 0}, dct_algo = 0, idct_algo = 0, 
 bits_per_coded_sample = 0, bits_per_raw_sample = 0, lowres = 0, coded_frame = 0x0, thread_count = 1, thread_type = 3, active_thread_type = 0, thread_safe_callbacks = 0, execute = 
 0x7ffff6e7bc30 , execute2 = 0x7ffff6e7bd00 , nsse_weight = 0, profile = -99, level = -99, skip_loop_filter = AVDISCARD_DEFAULT, 
 skip_idct = AVDISCARD_DEFAULT, skip_frame = AVDISCARD_DEFAULT, subtitle_header = 0x0, subtitle_header_size = 0, vbv_delay = 0, side_data_only_packets = 1, initial_padding = 0, framerate = {num = 0, 
 den = 1}, sw_pix_fmt = AV_PIX_FMT_NONE, pkt_timebase = {num = 0, den = 1}, codec_descriptor = 0x7ffff74fc910, pts_correction_num_faulty_pts = 0, pts_correction_num_faulty_dts = 0, 
 pts_correction_last_pts = 0, pts_correction_last_dts = 0, sub_charenc = 0x0, sub_charenc_mode = 0, skip_alpha = 0, seek_preroll = 0, debug_mv = 0, chroma_intra_matrix = 0x0, dump_separator = 0x0, 
 codec_whitelist = 0x0, properties = 0, coded_side_data = 0x0, nb_coded_side_data = 0, hw_frames_ctx = 0x0, sub_text_format = 0, trailing_padding = 0, max_pixels = 2147483647, hw_device_ctx = 0x0, 
 hwaccel_flags = 0, apply_cropping = 0, extra_hw_frames = 0, discard_damaged_percentage = 0}



AVFrame


{data = {
 0x5555555c2b00 "\373c;\270\203\001?\271\016[\n\271\236\222\343\071\310\322H8tBs\271\371о9Q[\017\271\314\330̹ҍ\325\071\a\340\315\270\224v\245\271\322\002\067:\265\240a\271ڱҹle.9r\247\232\070L\344\362\270\360\370\376\270ñ@9H", 
 0x5555555b5e00 "Q\r_\270\345\375\006\271\375\204S\271\206\301\235\071\021\373\202\071.V\352\270*2c\271\373\334x9\244\274\003\271*+\266\271!z\216\071xw\303\067\063\302ĸh\212\354\070\216\240\t\271\233\365ǹ\271\235\360\267\355'\f9\345\021\t\271\066\372\b8/\"\361\070\215", 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, linesize = {4608, 0, 0, 0, 0, 0, 0, 0}, extended_data = 0x5555555a2640, width = 0, height = 0, 
 nb_samples = 47, format = 8, key_frame = 1, pict_type = AV_PICTURE_TYPE_NONE, sample_aspect_ratio = {num = 0, den = 1}, pts = 0, pkt_pts = 0, pkt_dts = 0, coded_picture_number = 0, 
 display_picture_number = 0, quality = 0, opaque = 0x0, error = {0, 0, 0, 0, 0, 0, 0, 0}, repeat_pict = 0, interlaced_frame = 0, top_field_first = 0, palette_has_changed = 0, 
 reordered_opaque = -9223372036854775808, sample_rate = 32000, channel_layout = 3, buf = {0x5555555a3d80, 0x55555559fe40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, extended_buf = 0x0, nb_extended_buf = 0, 
 side_data = 0x0, nb_side_data = 0, flags = 0, color_range = AVCOL_RANGE_UNSPECIFIED, color_primaries = AVCOL_PRI_RESERVED0, color_trc = AVCOL_TRC_RESERVED0, colorspace = AVCOL_SPC_RGB, 
 chroma_location = AVCHROMA_LOC_UNSPECIFIED, best_effort_timestamp = 0, pkt_pos = 5412, pkt_duration = 508032, metadata = 0x0, decode_error_flags = 0, channels = 2, pkt_size = 432, qscale_table = 0x0, 
 qstride = 0, qscale_type = 0, qp_table_buf = 0x0, hw_frames_ctx = 0x0, opaque_ref = 0x0, crop_top = 0, crop_bottom = 0, crop_left = 0, crop_right = 0, private_ref = 0x0}



This is how I m decoding audio frames


while(av_read_frame(avc,avpacket) == 0){
 if(avpacket->stream_index == audioStream){
 int res = avcodec_send_packet(avctx,avpacket);
 if(res == AVERROR(EAGAIN)){
 continue;
 }
 else if(res<0){
 std::cout<<"error reading packet\n";
 break;
 }
 else{
 AVFrame* avframe = av_frame_alloc();
 res = avcodec_receive_frame(avctx,avframe);
 if(res == AVERROR(EAGAIN)){
 continue;
 }
 else if(res<0){
 std::cout<<"Error reading frame";
 break;
 }
 
 else{
 audio_buffer.push(*avframe);
 }
 av_frame_free(&avframe);
 }
 }
 av_packet_unref(avpacket);
 }



-
Difference between use subprocess.Popen() and run the command in shell mannually ? [duplicate]
6 février 2021, par hu chenlinimport subprocess
ffmpeg_params=['ffmpeg', '-y', '-i', 'http://cache.m.iqiyi.com/mus/235133201/2af150aebb98276a80d52513fb91fbc8/afbe8fd3d73448c9/0/20210115/1f/c5/cda301a0e8339c4cbcc89a4e9a6dafac.m3u8?qd_originate=tmts_py&tvid=1694459300&bossStatus=0&qd_vip=0&px=&src=3_31_312&prv=&previewType=&previewTime=&from=&qd_time=1612598784271&qd_p=6011968c&qd_asc=d0d83b774212c40885a78123935cf7d4&qypid=1694459300_04022000001000000000_4&qd_k=7b1dacf9d318a810bd201e367ef98196&isdol=0&code=2&ff=f4v&iswb=0&qd_s=otv&vf=bb7741a4e27350139427f0051c641530&np_tag=nginx_part_tag', '-c', 'copy', '-bsf:a', 'aac_adtstoasc', '--', 'f:\\/【英语口语】我羡慕你.mp4']
b=subprocess.Popen(ffmpeg_params)



Using this simple .py script I can call ffmpeg to download the video file sucessfully.


However, if I run




ffmpeg -y -i
http://cache.m.iqiyi.com/mus/235133201/2af150aebb98276a80d52513fb91fbc8/afbe8fd3d73448c9/0/20210115/1f/c5/cda301a0e8339c4cbcc89a4e9a6dafac.m3u8?qd_originate=tmts_py&tvid=1694459300&bossStatus=0&qd_vip=0&px=&src=3_31_312&prv=&previewType=&previewTime=&from=&qd_time=1612598784271&qd_p=6011968c&qd_asc=d0d83b774212c40885a78123935cf7d4&qypid=1694459300_04022000001000000000_4&qd_k=7b1dacf9d318a810bd201e367ef98196&isdol=0&code=2&ff=f4v&iswb=0&qd_s=otv&vf=bb7741a4e27350139427f0051c641530&np_tag=nginx_part_tag
-c copy -bsf:a aac_adtstoasc — f :/【英语口语】我羡慕你.mp4




in shell, it will fail with below message :




ffmpeg version N-90173-gfa0c9d69d3 Copyright (c) 2000-2018 the FFmpeg
developers built with gcc 7.3.0 (GCC) configuration : —enable-gpl
—enable-version3 —enable-sdl2 —enable-bzlib —enable-fontconfig —enable-gnutls —enable-iconv —enable-libass —enable-libbluray —enable-libfreetype —enable-libmp3lame —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libopenjpeg —enable-libopus —enable-libshine —enable-libsnappy —enable-libsoxr —enable-libtheora —enable-libtwolame —enable-libvpx —enable-libwavpack —enable-libwebp —enable-libx264 —enable-libx265 —enable-libxml2 —enable-libzimg —enable-lzma —enable-zlib —enable-gmp —enable-libvidstab —enable-libvorbis —enable-libvo-amrwbenc —enable-libmysofa —enable-libspeex —enable-libxvid —enable-libmfx —enable-amf —enable-cuda —enable-cuvid —enable-d3d11va —enable-nvenc —enable-dxva2 —enable-avisynth libavutil 56. 7.101 / 56. 7.101 libavcodec 58. 13.100 / 58. 13.100 libavformat 58. 10.100 /
58. 10.100 libavdevice 58. 2.100 / 58. 2.100 libavfilter 7. 12.100 / 7. 12.100 libswscale 5. 0.101 / 5. 0.101 libswresample 3. 0.101 / 3. 0.101 libpostproc 55. 0.100 /
55. 0.100 http://cache.m.iqiyi.com/mus/235133201/2af150aebb98276a80d52513fb91fbc8/afbe8fd3d73448c9/0/20210115/1f/c5/cda301a0e8339c4cbcc89a4e9a6dafac.m3u8?qd_originate=tmts_py :
Invalid data found when processing input 'tvid' is not recognized as
an internal or external command, operable program or batch file.
'bossStatus' is not recognized as an internal or external command,
operable program or batch file.




I can use subprocess.Popen to call the ffmpeg to download the video file successfully, However, I can't directly run ffmpeg in shell with the same parameters to download the file. Why ? How can I directly run ffmpeg in shell to download the file ?


-
What is the difference between "location" and "location-eng" metadata of a MP4 file ?
10 décembre 2020, par Weihang JianI am trying to retrieve GPS information from media files using
ffprobe
, for example :

$ ffprobe -v quiet -show_format sample.mp4
[FORMAT]
filename=sample.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=4.293000
size=11888152
bit_rate=22153556
probe_score=100
TAG:major_brand=mp42
TAG:minor_version=0
TAG:compatible_brands=isommp42
TAG:creation_time=2020-09-20T11:33:49.000000Z
TAG:location=+25.0731+121.3663/
TAG:location-eng=+25.0731+121.3663/
TAG:com.android.version=10
TAG:com.android.manufacturer=Google
TAG:com.android.model=Pixel
[/FORMAT]



We can see that there are 2 tags that look like ISO6709 representations,
location
andlocation-eng
.

And here are my questions :


- 

- What is the difference between
location
andlocation-eng
? It looks like they are always the same. Why do we need 2 different keys with same the value ? - Are
location
andlocation-eng
really in ISO6709 representations ? Is there any specification or standard I can refer to ?






I would really appreciate your help.


- What is the difference between