Recherche avancée

Médias (1)

Mot : - Tags -/musée

Autres articles (38)

  • La file d’attente de SPIPmotion

    28 novembre 2010, par

    Une 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 (...)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Le plugin : Podcasts.

    14 juillet 2010, par

    Le problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
    Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
    Types de fichiers supportés dans les flux
    Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...)

Sur d’autres sites (6456)

  • CCTV DVR recovery

    5 juin 2014, par bitmadmax

    I need to recover footage from one of these unbranded CCTV DVR units. I am unable to gain access to the unit via a password, factory reset or backdoor, which would otherwise have let me "export" the footage.

    So I have pulled the hard disk and made a copy of it. The original unit is Linux-based which ran off a chip, and an EXT filesystem laid down on the hard disk itself. There is one partition which appears to contain the "raw" CCTV footage.

    The hex structure appears as though each frame begins with 00dcH264, 01dcH264, 10dcH264 and so on... I think the 00, 01, 10 etc refers to the channel/camera input number. The hex contents after the H264 portion appears completely random, of variable length and has no signature, and is followed immediately with the next xxdcH264 header.

    When I use ffprobe across the entire raw footage partition, it is only detecting the 1 video stream. I can use ffmpeg to "force" it to read it in as H.264 and dump it out into an MP4 file that I can play. However, this gives me the problem that the footage as an individual file is quite "noisy" and has frames from each channel appearing randomly.

    Is there anyway I could maybe separate out the footage into say a file for each channel ? I am not a great programmer so something as simple as possible would be ideal. I did note that ffprobe determined that some of the frames were of different resolution - it is likely that the different channels recorded their image at different dimensions, I just wondered if another way might be to get ffprobe/ffmpeg to output frames based on their image dimensions perhaps ?

    EDIT : sample hex below :

    Offset      0  1  2  3  4  5  6  7   8  9 10 11 12 13 14 15
    00000000   32 31 64 63 48 32 36 34  76 08 00 00 00 00 00 00   21dcH264v      
    00000016   1E 8B 77 07 6A 00 00 00  00 00 00 01 61 FC 03 51    ‹w j       aü Q
    00000032   42 83 FC C5 C6 BD 50 63  5F 37 68 B6 B5 B8 4F E0   BƒüÅÆ½Pc_7h¶µ¸Oà
    00000048   2E 74 B8 FF BB BD 70 1C  DE 1E 7A 8C 0F            .t¸ÿ»½p Þ zŒ

    (variable length)....

    Offset      0  1  2  3  4  5  6  7   8  9 10 11 12 13 14 15
    00000000   D3 30 59 01 FA 98 08 A0  0A 27 01 49 19 C1 0C 89   Ó0Y ú˜   ' I Á ‰
    00000016   83 AC 6B 28 03 8D 92 29  38 18 BA 95 82 B3 BA C6   ƒ¬k(  ’)8 º•‚³ºÆ
    00000032   33 0A 74 10 1A D5 89 3B  90 A0 19 1F A9 93 00 10   3 t  Õ‰;    ©“  
    00000048   92 AA 70 32 31 64 63 48  32 36 34                  ’ªp21dcH264
  • Download encrypted TS files from video stream

    8 janvier 2021, par albertma789

    Following this post, I usually download transport stream (.ts) files by using the browser's developer console to find the URLs of the .ts files and then I use wget to download them. After that I use the ffmpeg -f concat method to combine them into an mp4 file.

    



    Recently I come across a site that streams videos and I used the same method to download all the .ts files. The site is here. After I downloaded all the individual .ts files, I use ffmprobe to check the file format but realized the .ts files cannot be understood by ffmpeg/ffmprobe. While the site uses http (not https) I thought the streams are not encrypted so I tried to open the .ts file in an hex editor but I don't know what format it is (but they don't look like zip/gz). My question is : are the transport steams encrypted ? If yes, is there a way to decrypt them ? If not ? Can anyone point me to the right direction such that I can make ffmpeg understand them ?

    



    An example transport stream (first & second) are here and here but the link might expire in a bit. In that case you will need to open the site in developer console to find the updated link to the .ts files.

    



    The site uses JW Player 8.0.0

    


  • How to extract good quality frame in pixel format from live mpeg-ts stream ?

    2 février 2024, par Aven

    I use the command below to stream my ts file for my programe :

    


    ffmpeg -re -i independent_frame.ts -f mpegts udp://127.0.0.1:10002


    


    Below is the code of my programe, I'm trying to extract each frame in pixel format from the stream by using FFmpeg, but I found the quality is not good as it should be of the extracted frame ( I know OpenCV can do this, But I have other reason have to use FFmpeg ). I tried to put -qscale:v 2 in FFmpeg command, but it seems change nothing. Does anyone know how to enhance the frame quality in this case ? Thanks !

    


    stream = 'udp://127.0.0.1:10002'
H, W = 720, 1280

command = [ 'ffmpeg',
            '-i', stream ,
            '-pix_fmt', 'bgr24', # brg24 for matching OpenCV
            '-qscale:v', '2', 
            '-f', 'rawvideo',
            'pipe:' ]

# Execute FFmpeg as sub-process with stdout as a pipe
process = subprocess.Popen(command, stdout=subprocess.PIPE, bufsize=10**8)#10**8

# Load individual frames in a loop
nb_img = H*W*3

# Read decoded video frames from the PIPE until no more frames to read
num = 0
while True:
    # Read decoded video frame (in raw video format) from stdout process.
    buffer = process.stdout.read(W*H*3)

    # Break the loop if buffer length is not W*H*3 (when FFmpeg streaming ends).
    if len(buffer) != W*H*3:
        break

    img = np.frombuffer(buffer, np.uint8).reshape(H, W, 3)
    num +=1

    if num == 435:
        cv2.imwrite('435.png', img)
        cv2.imshow('img', img)  # Show the image for testing
        cv2.waitKey(0)
        cv2.destroyAllWindows()
        break

process.stdout.close()
process.wait()
cv2.destroyAllWindows()