
Recherche avancée
Autres articles (38)
-
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
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 (...) -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)
Sur d’autres sites (4321)
-
Show the correct (non-dev) version number
20 septembre 2011, par Scott Schillerm doc/generated/script/soundmanager2.html m doc/generated/src/SoundManager2.html m doc/generated/src/SoundManager2_AS3.html Show the correct (non-dev) version number
-
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 ?