
Recherche avancée
Autres articles (53)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Les vidéos
21 avril 2011, parComme les documents de type "audio", Mediaspip affiche dans la mesure du possible les vidéos grâce à la balise html5 .
Un des inconvénients de cette balise est qu’elle n’est pas reconnue correctement par certains navigateurs (Internet Explorer pour ne pas le nommer) et que chaque navigateur ne gère en natif que certains formats de vidéos.
Son avantage principal quant à lui est de bénéficier de la prise en charge native de vidéos dans les navigateur et donc de se passer de l’utilisation de Flash et (...) -
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)
Sur d’autres sites (7742)
-
Need help accessing the key when trying to decrypt .ts files via ffmpeg
4 juillet 2024, par DizI have downloaded all the individual .ts files and the corresponding m3u8 file from a VOD and I now want to merge them together into a single watchable file.
The problem is, that the .ts files are encrypted and don't understand how to access the key.


Here's the beginning of the m3u8 file :


#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:4
#EXT-X-PLAYLIST-TYPE:EVENT
#EXT-X-MEDIA-SEQUENCE:6484
#EXT-X-KEY:METHOD=AES-128,URI="irvine://aes",KEYFORMATVERSIONS="1",IV=0x1E9ABA2B3C916D47D592D9B1E7674F4B
#EXT-X-PROGRAM-DATE-TIME:2024-05-25T07:24:59.682Z
#EXTINF:4.004,
index_1_6484.ts
#EXT-X-PROGRAM-DATE-TIME:2024-05-25T07:25:03.686Z
#EXTINF:4.004,
index_1_6485.ts
#EXT-X-PROGRAM-DATE-TIME:2024-05-25T07:25:07.690Z
#EXTINF:4.004,
index_1_6486.ts
#EXT-X-PROGRAM-DATE-TIME:2024-05-25T07:25:11.694Z
#EXTINF:4.004,
index_1_6487.ts
...




As far as I understood I only have the initialization vector and I need to access the URI to get the actual key.


I have tried to decrypt the playlist with the following command :


ffmpeg -i index_1.m3u8 -c copy output.ts



But I would always get the following errors :


Unable to open key file irvine://aes
Error when loading first segment 'index_1_6484.ts'
Error opening input: Invalid data found when processing input
Error opening input file index_1.m3u8.
Error opening input files: Invalid data found when processing input



I have also tried just decrypting a single .ts file to start with, with similar results.


ffmpeg -decryption_key 1E9ABA2B3C916D47D592D9B1E7674F4B -i index_1_6484.ts -codec copy index_1_6484_out.ts



-
ffmpeg - HLS stream audio error between segmets
2 février 2019, par CarlI have a huge amount of mp4 files to create HLS segments from, more than 200 hours worth of files. I don’t see the point of re-encoding these videos because they are already in mp4 format. I’m using the following command which copies the video into segments instead of encoding it again.
ffmpeg -i filename.mp4 -codec: copy -start_number 0 -hls_time 4 -hls_list_size 0 -f hls filename.m3u8
The problem is when it comes to stitching these segments, I’m getting micro audio errors between segments. It’s hard to explain but imagine somebody turning audio off for 0.1 seconds. I doesn’t happen in all of the segments but in 20%-30% of them. Is there anything I can do stop these errors from popping up apart from reencoding all the videos. There are no problems with video btw.
Here’s media info from one of the files :
General
Complete name : C :\video_test\video_file.mp4
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42 (isom/iso2/avc1/mp41/mp42)
File size : 45.7 MiB
Duration : 7 min 34 s
Overall bit rate mode : Variable
Overall bit rate : 844 kb/s
Writing application : Lavf53.32.100Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4
Format settings, CABAC : Yes
Format settings, RefFrames : 8 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 7 min 34 s
Bit rate : 767 kb/s
Width : 1 280 pixels
Height : 720 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 30.000 FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.028
Stream size : 41.5 MiB (91%)
Writing library : x264 core 136
Encoding settings : cabac=1 / ref=8 / deblock=1:0:0 / analyse=0x3:0x113 / me=umh / subme=6 / psy=0 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=0 / threads=48 / lookahead_threads=5 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=0 / keyint=60 / keyint_min=30 / scenecut=0 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=20.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 7 min 34 s
Bit rate mode : Variable
Bit rate : 72.0 kb/s
Maximum bit rate : 96.0 kb/s
Channel(s) : 2 channels
Channel positions : Front : L R
Sampling rate : 44.1 kHz
Frame rate : 43.066 FPS (1024 SPF)
Compression mode : Lossy
Stream size : 3.92 MiB (9%)
Language : English
Default : Yes
Alternate group : 1Edit : I just tried copying video and reencoding the audio with the following command but problem still persists.
ffmpeg -i filename.mp4 -vcodec copy -c:a aac -ar 48000 -b:a 128k -start_number 0 -hls_time 4 -hls_list_size 0 -f hls filename.m3u8
-
FFmpeg container is unable to communicate to my application container in Quarkus [duplicate]
28 avril, par Abhi11I'm working on a application where i am running different container such as clamav,postgres,my quarkus application.all the configuration is defined in docker compose file.now i want to perform some operation on file that's why want to use ffmpeg. i am using ffmpeg as separate container and connected via docker network.i want to execute some ffmpeg command for example check version and other advance.I'm getting error. Please help me to solve this.


My docker-compose.yml —


version: "3.8"
services:
 clamav:
 image: clamav/clamav:latest
 container_name: clamav
 ports:
 - "3310:3310"
 restart: always
 healthcheck:
 test: ["CMD", "clamdscan", "--version"]
 interval: 30s
 timeout: 10s
 retries: 5
 networks:
 - techtonic-antivirus-net

 postgres-database:
 image: postgres:15
 container_name: postgres
 environment:
 POSTGRES_DB: antivirustt
 POSTGRES_USER: postgres
 POSTGRES_PASSWORD: postgres
 ports:
 - "5434:5432"`enter code here`
 restart: always
 volumes:
 - pgdata:/var/lib/postgresql/data
 networks:
 - techtonic-antivirus-net

 # Add Redis container
 redis:
 image: redis:latestenter code here
 container_name: redis
 ports:
 - "6379:6379"
 restart: always
 networks:
 - techtonic-antivirus-net

 ffmpeg:
 image: jrottenberg/ffmpeg:latest
 container_name: ffmpeg
 restart: always
 entrypoint: ["tail", "-f", "/dev/null"] # Keeps the container running
 networks:
 - techtonic-antivirus-net
 healthcheck:
 test: ["CMD", "ffmpeg", "-version"]
 interval: 10s
 timeout: 5s
 retries: 3

 techtonic-antivirus:
 build:
 context: .
 dockerfile: src/main/docker/Dockerfile.native-micro
 container_name: techtonic-antivirus
 depends_on:
 clamav:
 condition: service_healthy
 postgres-database:
 condition: service_started
 redis:
 condition: service_started
 ports:
 - "8080:8080"
 environment:
 - CLAMAV_HOST=${CLAMAV_HOST}
 - CLAMAV_PORT=${CLAMAV_PORT}
 - QUARKUS_PROFILE=${QUARKUS_PROFILE:-dev}
 - QUARKUS_DATASOURCE_JDBC_URL=jdbc:postgresql://postgres-database:5432/antivirustt
 - QUARKUS_DATASOURCE_USERNAME=postgres
 - QUARKUS_DATASOURCE_PASSWORD=postgres
 - QUARKUS_REDIS_HOSTS=redis://redis:6379
 restart: always
 volumes:
 - ffmpeg:/ffmpeg
 - /var/run/docker.sock:/var/run/docker.sock
 networks:
 - techtonic-antivirus-net

volumes:
 pgdata:
 ffmpeg:

networks:
 techtonic-antivirus-net:



My Service code :


@Slf4j
@ApplicationScoped
public class CheckFFmpegStatus {

 public static boolean isFFmpegReady() {
 try {
 // ProcessBuilder pb = new ProcessBuilder("docker", "exec", "ffmpeg", "ffmpeg", "-version");
 ProcessBuilder pb = new ProcessBuilder("ffmpeg", "-version");
 Process process = pb.start();
 int exitCode = process.waitFor();
 if (exitCode == 0) {
 log.info("✅ FFmpeg is ready and reachable inside the container.");
 } else {
 log.warn("⚠️ FFmpeg process exited with code: " + exitCode);
 }

 return exitCode == 0;
 } catch (IOException | InterruptedException e) {
 log.error("❌ Failed to check FFmpeg status", e);
 return false;
 }
 }
}