
Recherche avancée
Médias (10)
-
Demon Seed
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Demon seed (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
The four of us are dying (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Corona radiata (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Lights in the sky (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Head down (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
Autres articles (32)
-
La file d’attente de SPIPmotion
28 novembre 2010, parUne file d’attente stockée dans la base de donnée
Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...) -
Contribute to documentation
13 avril 2011Documentation is vital to the development of improved technical capabilities.
MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
To contribute, register to the project users’ mailing (...) -
Selection of projects using MediaSPIP
2 mai 2011, parThe examples below are representative elements of MediaSPIP specific uses for specific projects.
MediaSPIP farm @ Infini
The non profit organizationInfini develops hospitality activities, internet access point, training, realizing innovative projects in the field of information and communication technologies and Communication, and hosting of websites. It plays a unique and prominent role in the Brest (France) area, at the national level, among the half-dozen such association. Its members (...)
Sur d’autres sites (4733)
-
moov atom missing when streaming video to server
3 octobre 2024, par ZaidI am working on a screen recording application where it allows users to record their screen and I use websocket to send their bytes data in real time to my FastAPI Python server. The bytes are sent every 2 second and I use FFmpeg to keep saving the bytes in the output MP4 video file.


problem :
After the user stops the recording, I have a ffmpeg process that takes the recorded video as input and add some filters on top of it and return an edited video. Most of the time it works fine, however, sometime users are facing this ffmpeg error :-


[mov,mp4,m4a,3gp,3g2,mj2 @ 0x60f50ba488c0] moov atom not found
/tmp/recording_91427bc6-3e69-4fef-9aa9-17093d41a136.mp4: Invalid data found when processing input



When I open the video locally, there doesn't seem be any problem and neither the video is corrupted


Here is my code :-


FRONTEND


const recorder = new MediaRecorder(stream, {
 mimeType: 'video/webm;codecs=H264',
 videoBitsPerSecond: 8000000
 });

recorder.ondataavailable = (e: BlobEvent) => {
 socketRef.socket.send(e.data)
}



And here is my python code :-


@router.websocket("/stream")
async def websocket_endpoint(websocket: WebSocket, token: str = Query(...), videoId: str = Query(...), authorize: AuthJWT = Depends()):
 await manager.connect(websocket)

 print(f"Chrome Extension = {token} and the key = {videoId}")

 print(f" Client connected: {websocket.client.host}")

 dataNumber = 1

 recordingFile = os.path.join(temp_dir, f"recording_{videoId}.mp4")

 command = [
 'ffmpeg', 
 '-y',
 '-i', 
 '-', 
 '-codec:v', 
 'copy', 
 '-c:a', 'aac', 
 '-y',
 '-f', 'mp4',
 recordingFile,
 # "-"
 # f'output{queueNumber}.mp4',
 ]

 async with await anyio.open_process(command, stdin=subprocess.PIPE) as process:
 try:
 while True:
 try:
 # async with video_lock:
 data = await websocket.receive_bytes()
 if not data:
 break
 await process.stdin.send(data)
 await websocket.send_json({"chunkNumber": dataNumber, "status": 200})
 dataNumber = dataNumber + 1
 except RuntimeError:
 break 
 except WebSocketDisconnect:
 print(f"Client disconnected: {websocket.client.host}")
 finally:
 manager.disconnect(websocket)
 await process.stdin.aclose()
 await process.wait()



This is error in the console :-



-
re-stream rtsp stream to youtube [closed]
2 novembre 2024, par Darteri would like to re-stream an rtsp stream of a wifi camera to youtube
the stream is allready a H.264 codec.


The camera does not have any audio, but youtube needs audio to accept the stream, thats why i faked and audio stream.
I tried this


ffmpeg -re -rtsp_transport tcp -i rtsp://192.168.1.140/live -f lavfi -i anullsrc -f rawvideo rtmp://a.rtmp.youtube.com/live2/<stream key="key">
</stream>


but it fails


av_interleaved_write_frame(): Broken pipeB time=00:00:00.20 bitrate=884736.0kbits/s speed=0.0156x 
Error writing trailer of rtmp://a.rtmp.youtube.com/live2/dgyh-qzba-t13k-6qtf-6rgq: Broken pipe



i would like to not change the codec to not put any stress on the machine


-
RTP stream from ffmpeg not reaching mediasoup producer : what could be wrong ? [closed]
5 novembre 2024, par Francesco VignolaI developed a producer for mediasoup that is supposed to receive the RTP stream generated by ffmpeg (via fluent-ffmpeg) and send it to the consumer.


ffmpeg correctly generates the stream, and I conducted a test with tcpdump, where I can see the traffic generated by ffmpeg being sent locally to the port of the PlainTransport with which the producer is created.


However, neither the producer nor the consumer seem to be able to intercept it, as the listeners I attached to the specific events are never triggered.


I also started an ffmpeg client to receive the stream, and the test was successful (it receives the stream). However, I can’t understand why it doesn't work with mediasoup.


Can someone help me ? Did I forget any configuration parameters ?


The code is as follows :


const router = await worker.createRouter({
 mediaCodecs: [{
 kind: 'video',
 mimeType: 'video/VP8',
 clockRate: 90000,
 payloadType: 96
 }]
});

const transport = await router.createPlainTransport({
 listenIp: { ip: '127.0.0.1' },
 rtcpMux: false,
 comedia: true
});

const producer = await transport.produce({
 kind: 'video',
 rtpParameters: router.rtpParameters
});

const { localIp: ip, localPort: port } = transport.tuple;
const { localPort: rtcpPort } = transport.rtcpTuple;

await transport.connect({
 ip: ip,
 port: port,
 rtcpPort: rtcpPort
});

ffmpeg(videoFilePath)
 .inputOptions('-re')
 .videoCodec('libvpx')
 .outputOptions([
 '-f rtp',
 '-payload_type', '96',
 '-ssrc', ssrc,
 '-an',
 '-sdp_file', 'out.sdp'
 ])
 .output(`rtp://${ip}:${port}?rtcpport=${rtcpPort}`)
 .run();



The video to be streamed has an .mp4 extension and is saved locally on the server.


Thank you to anyone who is willing to help me.