
Recherche avancée
Autres articles (79)
-
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. -
Organiser par catégorie
17 mai 2013, parDans MédiaSPIP, une rubrique a 2 noms : catégorie et rubrique.
Les différents documents stockés dans MédiaSPIP peuvent être rangés dans différentes catégories. On peut créer une catégorie en cliquant sur "publier une catégorie" dans le menu publier en haut à droite ( après authentification ). Une catégorie peut être rangée dans une autre catégorie aussi ce qui fait qu’on peut construire une arborescence de catégories.
Lors de la publication prochaine d’un document, la nouvelle catégorie créée sera proposée (...) -
Récupération d’informations sur le site maître à l’installation d’une instance
26 novembre 2010, parUtilité
Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...)
Sur d’autres sites (6777)
-
Live streaming of processed frames to AWS
22 avril 2021, par MinasChamI'm working on a project where i need to capture live video feed from an RTSP camera source, process the video frame-by-frame and stream the result to an AWS Service.


So far, my solution :


- 

- Captures frames from the RTSP camera source using
OpenCV
and performs some processing. - Feeds the processed frames to an
ffmpeg
pipe that packages the content for online streaming (HTTP Live Streaming - hls
) and saves it locally. - Transfers the media content to an Amazon Kinesis Video Stream using a
Gstreamer
pipeline element withkvssink
as a sink element.








My questions are :


- 

- Currently I'm saving the content both locally and on an Amazon Kinesis Video Stream. Is this efficient ?
- Is it possible to directly stream the frames to the Amazon kinesis Video Stream (perhaps by connecting the
ffmpeg
output with thegstreamer
pipeline element) ? - Is the file format suitable for this implementation or would it better to encode the media differently ?








- Captures frames from the RTSP camera source using
-
I want to print HLS files using ffmpeg in aws lambda (python)
14 avril 2021, par 최우선I implemented it through the link(https://aws.amazon.com/ko/blogs/media/processing-user-generated-content-using-aws-lambda-and-ffmpeg/) here, and it works well.


s3_source_bucket = event['Records'][0]['s3']['bucket']['name']
s3_source_key = event['Records'][0]['s3']['object']['key']

s3_source_basename = os.path.splitext(os.path.basename(s3_source_key))[0]
s3_destination_filename = s3_source_basename + ".m3u8"

s3_client = boto3.client('s3')
s3_source_signed_url = s3_client.generate_presigned_url('get_object',
 Params={'Bucket': s3_source_bucket, 'Key': s3_source_key},
 ExpiresIn=SIGNED_URL_TIMEOUT)


ffmpeg_cmd = "/opt/bin/ffmpeg -i \"" + s3_source_signed_url + "\" -codec: copy -start_number 0 -hls_time 10 -hls_list_size 0 -f hls -"
command1 = shlex.split(ffmpeg_cmd)
p1 = subprocess.run(command1, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

resp = s3_client.put_object(Body=p1.stdout, Bucket=S3_DESTINATION_BUCKET, Key=s3_destination_filename)



However, the actual output through ffmpeg is multiple files. For example test.m3u8, test0.ts, test1.ts .....


But when I print p1.stdout, it looks like multiple files (test.m3u8,test0.ts....) are merged into one file.


Is there a way to get the actual output multiple files (test.m3u8,test0.ts......) from p1.stdout ? Please help.


-
ffmpeg file conversion AWS Lambda
10 avril 2021, par eartoolboxI want a .webm file to be converted to a .wav file after it hits my S3 bucket. I followed this tutorial and tried to adapt it from my use case using the .webm -> .wav ffmpeg command described here.


My AWS Lambda function generally works, in that when my .webm file hits the source bucket, it is converted to .wav and ends up in the destination bucket. However, the resulting file .wav is always 0 bytes (though the .webm not, including the appropriate audio). Did I adapt the code wrong ? I only changed the ffmpeg_cmd line from the first link.


import json
import os
import subprocess
import shlex
import boto3

S3_DESTINATION_BUCKET = "hmtm-out"
SIGNED_URL_TIMEOUT = 60

def lambda_handler(event, context):

 s3_source_bucket = event['Records'][0]['s3']['bucket']['name']
 s3_source_key = event['Records'][0]['s3']['object']['key']

 s3_source_basename = os.path.splitext(os.path.basename(s3_source_key))[0]
 s3_destination_filename = s3_source_basename + ".wav"

 s3_client = boto3.client('s3')
 s3_source_signed_url = s3_client.generate_presigned_url('get_object',
 Params={'Bucket': s3_source_bucket, 'Key': s3_source_key},
 ExpiresIn=SIGNED_URL_TIMEOUT)
 
 ffmpeg_cmd = "/opt/bin/ffmpeg -i \"" + s3_source_signed_url + "\" -c:a pcm_f32le " + s3_destination_filename + " -"
 
 
 command1 = shlex.split(ffmpeg_cmd)
 p1 = subprocess.run(command1, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

 resp = s3_client.put_object(Body=p1.stdout, Bucket=S3_DESTINATION_BUCKET, Key=s3_destination_filename)

 return {
 'statusCode': 200,
 'body': json.dumps('Processing complete successfully')
 }