
Recherche avancée
Autres articles (64)
-
Menus personnalisés
14 novembre 2010, parMediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
Menus créés à l’initialisation du site
Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...) -
Activation de l’inscription des visiteurs
12 avril 2011, parIl est également possible d’activer l’inscription des visiteurs ce qui permettra à tout un chacun d’ouvrir soit même un compte sur le canal en question dans le cadre de projets ouverts par exemple.
Pour ce faire, il suffit d’aller dans l’espace de configuration du site en choisissant le sous menus "Gestion des utilisateurs". Le premier formulaire visible correspond à cette fonctionnalité.
Par défaut, MediaSPIP a créé lors de son initialisation un élément de menu dans le menu du haut de la page menant (...) -
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 (10488)
-
Calling ffmpeg from php
7 juillet 2013, par v3gaI need to run ffmpeg from a php script. The ffmpeg wiki page on the same topic (http://ffmpeg.org/trac/ffmpeg/wiki/Using%20FFmpeg%20from%20PHP%20scripts) suggests using shell_exec over ffmpeg-php. Some other pages suggests using ffmpeg-php. Which method is better ? Is ffmpeg-php compatible with latest versions of php ? My only purpose is to convert any videos hosted by the user into mp4 (h.264,aac).
-
YUV to RGB by Shader on iPhone
27 octobre 2012, par user1333656Currently I am developing a video player using FFMPEG.
I'm trying to convert YUV420P to RGB by Shader to reduce performance hit and I could see it works fine. The problem is caused when I try to change image size.Case 1. YUV to RGB is perfect. but the image is not exactly fit to Texture Bounds.
For example, if i play 640x360 video, right (640-512) part is cropped and bottom (512-360) is filled with green colored rectangle.FRAME_X=512; //This is texture size
FRAME_Y=512;
avpicture_fill((AVPicture *) f, [currentVideoBuffer.data mutableBytes],
enc->pix_fmt,
FRAME_X, FRAME_Y);
av_picture_copy((AVPicture *) f, (AVPicture *) avFrame,
enc->pix_fmt,
enc->width, enc->height);....
int yuvWidth= FRAME_X ;
int yuvHeight= FRAME_Y;
glBindTexture ( GL_TEXTURE_2D, textureIdY );
glTexImage2D(GL_TEXTURE_2D, 0, GL_LUMINANCE,
yuvWidth, yuvHeight, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, y_channel);
glBindTexture ( GL_TEXTURE_2D, textureIdU );
glTexImage2D(GL_TEXTURE_2D, 0, GL_LUMINANCE,
yuvWidth/2, yuvHeight/2, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, u_channel);
glBindTexture ( GL_TEXTURE_2D, textureIdV );
glTexImage2D(GL_TEXTURE_2D, 0, GL_LUMINANCE,
yuvWidth/2, yuvHeight/2, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, v_channel);Case 2. If i set actual image size to texture size, then image is exactly fit to texture but the color of image is a little bit strange. It has too much green color.
Does anybody give me some clues for this ??
Thanks in advance. -
How to export audio from a iPhone video file with FFmpeg ?
11 janvier 2020, par DanScripterUPDATE 1 the problem resides in the input read-stream. (check below)
I am using fluent-ffmpeg (version : 2.1.2) to get a .mp3 file out of a video file that I input as a stream .createReadStream(). I output the file as a .pipe to a remoteWriteStream.
ffmpeg -i pipe:0 -vn -f mp3 -acodec mp3 -movflags frag_keyframe+empty_moov pipe:1
This works fine with .mp4, .webm and .mov (codec : prores) files.
But it somehow does not want to work with a .mov out of an iPhone 11. FFmpeg is not giving me any error when running above code. It creates the .mp3 file but the size is just 152 B and it is not playable.
I ffprobed the iPhone .mov files it returns this :
"{ streams:
[ { index: 0,
codec_name: 'hevc',
codec_long_name: 'H.265 / HEVC (High Efficiency Video Coding)',
profile: 'Main',
codec_type: 'video',
codec_time_base: '1111/33300',
codec_tag_string: 'hvc1',
codec_tag: '0x31637668',
width: 1920,
height: 1080,
coded_width: 1920,
coded_height: 1088,
has_b_frames: 2,
sample_aspect_ratio: '0:1',
display_aspect_ratio: '0:1',
pix_fmt: 'yuv420p',
level: 120,
color_range: 'tv',
color_space: 'bt709',
color_transfer: 'bt709',
color_primaries: 'bt709',
chroma_location: 'unspecified',
field_order: 'unknown',
timecode: 'N/A',
refs: 1,
id: 'N/A',
r_frame_rate: '30000/1001',
avg_frame_rate: '33300/1111',
time_base: '1/600',
start_pts: 'N/A',
start_time: 'N/A',
duration_ts: 6666,
duration: 11.11,
bit_rate: 7611708,
max_bit_rate: 'N/A',
bits_per_raw_sample: 'N/A',
nb_frames: 333,
nb_read_frames: 'N/A',
nb_read_packets: 'N/A',
tags: [Object],
disposition: [Object] },
{ index: 1,
codec_name: 'aac',
codec_long_name: 'AAC (Advanced Audio Coding)',
profile: 'unknown',
codec_type: 'audio',
codec_time_base: '1/44100',
codec_tag_string: 'mp4a',
codec_tag: '0x6134706d',
sample_fmt: 'fltp',
sample_rate: 44100,
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/44100',
start_pts: 'N/A',
start_time: 'N/A',
duration_ts: 489951,
duration: 11.11,
bit_rate: 135091,
max_bit_rate: 192000,
bits_per_raw_sample: 'N/A',
nb_frames: 481,
nb_read_frames: 'N/A',
nb_read_packets: 'N/A',
tags: [Object],
disposition: [Object] },
{ index: 2,
codec_name: 'unknown',
codec_long_name: 'unknown',
profile: 'unknown',
codec_type: 'data',
codec_tag_string: 'mebx',
codec_tag: '0x7862656d',
id: 'N/A',
r_frame_rate: '0/0',
avg_frame_rate: '0/0',
time_base: '1/600',
start_pts: 'N/A',
start_time: 'N/A',
duration_ts: 6666,
duration: 11.11,
bit_rate: 2670,
max_bit_rate: 'N/A',
bits_per_raw_sample: 'N/A',
nb_frames: 38,
nb_read_frames: 'N/A',
nb_read_packets: 'N/A',
tags: [Object],
disposition: [Object] },
{ index: 3,
codec_name: 'unknown',
codec_long_name: 'unknown',
profile: 'unknown',
codec_type: 'data',
codec_tag_string: 'mebx',
codec_tag: '0x7862656d',
id: 'N/A',
r_frame_rate: '0/0',
avg_frame_rate: '0/0',
time_base: '1/600',
start_pts: 'N/A',
start_time: 'N/A',
duration_ts: 6666,
duration: 11.11,
bit_rate: 7,
max_bit_rate: 'N/A',
bits_per_raw_sample: 'N/A',
nb_frames: 1,
nb_read_frames: 'N/A',
nb_read_packets: 'N/A',
tags: [Object],
disposition: [Object] },
{ index: 4,
codec_name: 'unknown',
codec_long_name: 'unknown',
profile: 'unknown',
codec_type: 'data',
codec_tag_string: 'mebx',
codec_tag: '0x7862656d',
id: 'N/A',
r_frame_rate: '0/0',
avg_frame_rate: '0/0',
time_base: '1/600',
start_pts: 'N/A',
start_time: 'N/A',
duration_ts: 6666,
duration: 11.11,
bit_rate: 18117,
max_bit_rate: 'N/A',
bits_per_raw_sample: 'N/A',
nb_frames: 333,
nb_read_frames: 'N/A',
nb_read_packets: 'N/A',
tags: [Object],
disposition: [Object] } ],
format:
{ filename: 'pipe:0',
nb_streams: 5,
nb_programs: 0,
format_name: 'mov,mp4,m4a,3gp,3g2,mj2',
format_long_name: 'QuickTime / MOV',
start_time: 'N/A',
duration: 11.11,
size: 'N/A',
bit_rate: 'N/A',
probe_score: 100,
tags:
{ major_brand: 'qt ',
minor_version: '0',
compatible_brands: 'qt ',
creation_time: '2020-01-11T12:33:36.000000Z',
'com.apple.quicktime.make': 'Apple',
'com.apple.quicktime.model': 'iPhone 11',
'com.apple.quicktime.software': '13.3',
'com.apple.quicktime.creationdate': '2020-01-11T13:33:36+0100' } },
chapters: [] }"The created .mp3 file results in a undefined.
I already tried to take the .mov re-encode it to an .mp4 via ffmpeg and then try the above code to get the .mp3 - still does not work.
Any advice how I can make this work ?
thanks !
UPDATE 1
The problem resides in the input stream ! When I download the file to the local machine and input it as as a local file, not as a read stream, it works perfectly.I am creating the stream from a google cloud bucket like this :
const myBucket = storage.bucket('myBucket');
const remoteReadStream = myBucket.file(file).createReadStream();Since this code is perfectly working with all other codecs, what maybe the issue while creating the read stream from the google cloud from a h265 file ?