Recherche avancée

Médias (0)

Mot : - Tags -/metadatas

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (65)

Sur d’autres sites (13936)

  • Corrupt playback of .flv when using JW Player

    21 mai 2012, par Adam Ingmansson

    This question is also asked on Audio-Video Production

    I have some files that when played in jwplayer the playback is corrupt.
    The files are encoded to h.264 using FFMpeg and there is other files encoded in the same way that works.

    At the moment we only use the flash version of the player.

    The corrupt playback looks like this :

    http://adam.ingmansson.com/public/jwplayer-corrupt-video.png

    This problem started showing up after we did an upgrade to FFMpeg, so I haven't ruled out that it could be an encoding error.

    the command used to run FFMpeg is :

    ffmpeg
       -i /home/ftp/1c8f08b7d0d9e7fa4b24066156ad50bc981497a0.mov
       -vcodec libx264
       -preset ultrafast
       -profile baseline
       -acodec libfaac
       -ab 96k
       -crf 19
       -vf movie="/home/adam/logo.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:main_h-overlay_h-10 [out]"
       -y /home/ftp/1c8f08b7d0d9e7fa4b24066156ad50bc981497a0.flv

    I am in no way an expert in FFMpeg commandline, so feel free to point out any mistakes made.

    FFMpeg info :

    ffmpeg version git-2012-05-02-2330eb1 Copyright (c) 2000-2012 the FFmpeg developers
     built on May  3 2012 08:51:25 with gcc 4.4.3
     configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-version3 --enable-x11grab
     libavutil      51. 49.100 / 51. 49.100
     libavcodec     54. 17.101 / 54. 17.101
     libavformat    54.  3.100 / 54.  3.100
     libavdevice    53.  4.100 / 53.  4.100
     libavfilter     2. 72.103 /  2. 72.103
     libswscale      2.  1.100 /  2.  1.100
     libswresample   0. 11.100 /  0. 11.100
     libpostproc    52.  0.100 / 52.  0.100
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x24300e0] max_analyze_duration 5000000 reached at 5187000
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/ftp/javarecorder/1c8f08b7d0d9e7fa4b24066156ad50bc981497a0.mov':
     Metadata:
       major_brand     : qt
       minor_version   : 537199360
       compatible_brands: qt
       creation_time   : 2012-05-16 08:19:41
     Duration: 00:13:33.00, start: 0.000000, bitrate: 2164 kb/s
       Stream #0:0(eng): Video: qtrle (rle  / 0x20656C72), rgb24, 1366x768, 1457 kb/s, 8.43 fps, 1k tbr, 1k tbn, 1k tbc
       Metadata:
         creation_time   : 2012-05-16 08:19:41
         handler_name    : Apple Alias Data Handler
       Stream #0:1(eng): Audio: pcm_s16be (twos / 0x736F7774), 44100 Hz, 1 channels, s16, 705 kb/s
       Metadata:
         creation_time   : 2012-05-16 08:19:41
         handler_name    : Apple Alias Data Handler
    Please use -profile:a or -profile:v, -profile is ambiguous
    [buffer @ 0x2446ac0] w:1366 h:768 pixfmt:rgb24 tb:1/1000000 sar:0/1 sws_param:flags=2
    [movie @ 0x242f840] seek_point:0 format_name:(null) file_name:/home/adam/logo.png stream_index:0
    [overlay @ 0x2442840] auto-inserting filter 'auto-inserted scale 0' between the filter 'src' and the filter 'Parsed_overlay_1'
    [overlay @ 0x2442840] auto-inserting filter 'auto-inserted scale 1' between the filter 'Parsed_movie_0' and the filter 'Parsed_overlay_1'
    [scale @ 0x24444a0] w:1366 h:768 fmt:rgb24 sar:0/1 -> w:1366 h:768 fmt:yuv420p sar:0/1 flags:0x4
    [scale @ 0x2445100] w:80 h:80 fmt:rgba sar:1/1 -> w:80 h:80 fmt:yuva420p sar:1/1 flags:0x4
    [overlay @ 0x2442840] main w:1366 h:768 fmt:yuv420p overlay x:1276 y:678 w:80 h:80 fmt:yuva420p
    [overlay @ 0x2442840] main_tb:1/1000000 overlay_tb:1/25 -> tb:1/1000000 exact:1
    [libx264 @ 0x242d8c0] MB rate (4128000) > level limit (2073600)
    [libx264 @ 0x242d8c0] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x242d8c0] profile Constrained Baseline, level 5.2
    [libx264 @ 0x242d8c0] 264 - core 124 r2197 69a0443 - H.264/MPEG-4 AVC codec - Copyleft 2003-2012 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=36 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=crf mbtree=0 crf=19.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
    [libfaac @ 0x2443540] channel_layout not specified
    Guessed Channel Layout for  Input Stream #0.1 : mono
    Output #0, flv, to '/home/ftp/javarecorder/1c8f08b7d0d9e7fa4b24066156ad50bc981497a0.flv':
     Metadata:
       major_brand     : qt
       minor_version   : 537199360
       compatible_brands: qt
       creation_time   : 2012-05-16 08:19:41
       encoder         : Lavf54.3.100
       Stream #0:0(eng): Video: h264 ([7][0][0][0] / 0x0007), yuv420p, 1366x768, q=-1--1, 1k tbn, 1k tbc
       Metadata:
         creation_time   : 2012-05-16 08:19:41
         handler_name    : Apple Alias Data Handler
       Stream #0:1(eng): Audio: aac ([10][0][0][0] / 0x000A), 44100 Hz, mono, s16, 96 kb/s
       Metadata:
         creation_time   : 2012-05-16 08:19:41
         handler_name    : Apple Alias Data Handler
    Stream mapping:
     Stream #0:0 -> #0:0 (qtrle -> libx264)
     Stream #0:1 -> #0:1 (pcm_s16be -> libfaac)
    Press [q] to stop, [?] for help
    Input stream #0:1 frame changed from rate:44100 fmt:s16 ch:1 chl:0x0 to rate:44100 fmt:s16 ch:1 chl:0x4
    frame= 6856 fps=105 q=-1.0 Lsize=   36030kB time=00:13:32.83 bitrate= 363.1kbits/s
    video:27775kB audio:7540kB global headers:0kB muxing overhead 2.026555%
    [libx264 @ 0x242d8c0] frame I:28    Avg QP: 4.61  size:238170
    [libx264 @ 0x242d8c0] frame P:6828  Avg QP: 7.31  size:  3189
    [libx264 @ 0x242d8c0] mb I  I16..4: 100.0%  0.0%  0.0%
    [libx264 @ 0x242d8c0] mb P  I16..4:  0.9%  0.0%  0.0%  P16..4:  2.2%  0.0%  0.0%  0.0%  0.0%    skip:96.9%
    [libx264 @ 0x242d8c0] coded y,uvDC,uvAC intra: 32.3% 30.0% 29.0% inter: 1.0% 1.1% 1.0%
    [libx264 @ 0x242d8c0] i16 v,h,dc,p: 66% 32%  1%  1%
    [libx264 @ 0x242d8c0] i8c dc,h,v,p: 62% 23% 14%  1%
    [libx264 @ 0x242d8c0] kb/s:279.82

    EDIT :

    A coworker was able to view a "corrupted" file. The only difference between my computer and his is that he have a Mac. Same flash version, same JW Player version. Something is not right here.

  • Alias Artifacts

    26 avril 2013, par Multimedia Mike — General

    Throughout my own life, I have often observed that my own sense of nostalgia has a window that stretches about 10-15 years past from the current moment. Earlier this year, I discovered the show “Alias” and watched through the entire series thanks to Amazon Prime Instant Video (to be fair, I sort of skimmed the fifth and final season which I found to be horribly dull, or maybe franchise fatigue had set in). The show originally aired from 2001-2006 so I found that it fit well within the aforementioned nostalgia window.


    Alias (TV Series) logo

    But what was it, exactly, about the show that triggered nostalgia ? The computers, of course ! The show revolved around spies and espionage and cutting-edge technology necessarily played a role. The production designer for the series must have decided that Unix/Linux == awesome hacking and so many screenshots featured Linux.

    Since this is still nominally a multimedia blog, I’ll start of the screenshot recon with an old multimedia player. Here is a vintage Mac OS desktop running an ancient web browser (probably Netscape) that’s playing a full-window video (probably QuickTime embedded directly into the browser).


    Old Mac OS with old browser

    Click for larger image


    Let’s jump right into the Linux side of things. This screenshot makes me particularly sentimental since this is exactly what a stock Linux/KDE desktop looked like circa 2001-2003 and is more or less what I would have worked with on my home computer at the time :


    Alias: Linux/KDE desktop

    Click for larger image


    Studying that screenshot, we see that the user logs in as root, even to the desktop environment. Poor security practice ; I would expect better from a bunch of spooks.

    Echelon
    Look at the terminal output in the above screenshot– it’s building a program named Echelon, an omniscient spy tool inspired by a real-world surveillance network of the same name. In the show, Echelon is used to supply plot-convenient intelligence. At one point, some antagonists get their hands on the Echelon source code and seek to compile it. When they do, they will have access to the vast surveillance network. If you know anything about how computers work, don’t think about that too hard.

    Anyway, it’s interesting to note that Echelon is a properly autotool’d program– when the bad guys finally got Echelon, installation was just a ‘make install’ command away. The compilation was very user-friendly, though, as it would pop up a nice dialog box showing build progress :


    Alias: Compiling Echelon

    Click for larger image


    Examining the build lines in both that screenshot and the following lines, we can see that Echelon cares about files such as common/db_err.c and bt_curadj.c :


    Alias: Echelon used Berkeley DB

    Click for larger image


    A little googling reveals that these files both belong to the Berkeley DB library. That works ; I can imagine a program like this leveraging various database packages.

    Computer Languages
    The Echelon source code stuff comes from episode 2.11 : “A Higher Echelon”. While one faction had gotten a hold of the actual Echelon source code, a rival faction had abducted the show’s resident uber-nerd and, learning that they didn’t actually receive the Echelon code, force the nerd to re-write Echelon from scratch. Which he then proceeds to do…


    Alias: Rewriting Echelon

    Click for larger image


    The code he’s examining there appears to be C code that has something to do with joystick programming (JS_X_0, JS_Y_1, etc.). An eagle-eyed IMDb user contributed the trivia that he is looking at the file /usr/include/Linux/joystick.h.

    Getting back to the plot, how could the bad buys possibly expect him to re-write a hugely complex piece of software from scratch ? You might think this is the height of absurdity for a computer-oriented story. You’ll be pleased to know that the writers agreed with that assessment since, when the program was actually executed, it claimed to be Echelon, but that broke into a game of Pong (or some simple game). Suddenly, it makes perfect sense why the guy was looking at the joystick header file.

    This is the first bit of computer-oriented fun that I captured when I was watching the series :


    Alias: Java on the mainframe

    Click for larger image


    This printout purports to be a “mainframe log summary”. After some plot-advancing text about a security issue, it proceeds to dump out some Java source code.

    SSH
    Secure Shell (SSH) frequently showed up. Here’s a screenshot in which a verbose ‘ssh -v’ connection has just been closed, while a telnet command has apparently just been launched (evidenced by “Escape character is ‘^]’.”) :


    Alias: SSH/telnet

    Click for larger image


    This is followed by some good old Hollywood Hacking in which a free-form database command is entered through any available command line interface :


    Alias: Intuitive command line interface

    Click for larger image


    I don’t remember the episode details, but I’m pretty sure the output made perfect sense to the character typing the command. Here’s another screenshot where the SSH client pops up an extra-large GUI dialog element to notify the user that it’s currently negotiating with the host :


    Alias: SSH negotiation dialog

    Click for larger image


    Now that I look at that screenshot a little more closely, it appears to be a Win95/98 program. I wonder if there was an SSH client that actually popped up that gaudy dialog.

    There’s a lot of gibberish in this screenshot and I wish I had written down some details about what it represented according to the episode’s plot :


    Alias: Public key

    Click for larger image


    It almost sounds like they were trying to break into a network computer. Analyzing MD5 structure… public key synthesized. To me, the funniest feature is the 7-digit public key. I’m a bit rusty on the math of the RSA cryptosystem, but intuitively, it seems that the public and private keys need to be of roughly equal lengths. I.e., the private key in this scenario would also be 7 digits long.

    Gadgets
    Various devices and gadgets were seen at various junctures in the show. Here’s a tablet computer from back when tablet computers seemed like fantastical (albeit stylus-requiring) devices– the Fujitsu Stylistic 2300 :


    Alias: Fujitsu Stylistic 2300 tablet

    Click for larger image


    Here’s a videophone from an episode that aired in 2005. The specific model is the Packet8 DV326 (MSRP of US$500). As you can see from the screenshot, it can do 384 kbps both down and up.


    Alias: Packet8 DV326

    Click for larger image


    I really regret not writing down the episode details surrounding this gadget. I just know that it was critical that the good guys get it and keep from falling into the hands of the bad guys.


    Alias: Gadget using Samsung and Lexar chips

    Click for larger image


    As you can see, the (presumably) deadly device contains a Samsung chip and a Lexar chip. I have to wonder what device the production crew salvaged this from (probably just an old cell phone).

    Other Programs

    The GIMP photo editor makes an appearance while scrubbing security camera footage, and serves as the magical Enhance Button (at least they slung around the term “gamma”) :


    Alias: GIMP editor

    Click for larger image


    I have no idea what MacOS-based audio editing program this is. Any ideas ?


    Alias: Apple MacOS-based audio editor

    Click for larger image


    FTP shows up in episode 2.12, “The Getaway”. It’s described as a “secure channel” for communication, which is quite humorous to anyone versed in internet technology.


    Alias: FTP secure channel

    Click for larger image


  • compile ffmpeg with android ndk r5b

    7 janvier 2013, par null

    compile ffmpeg with android ndk r5b.

    ffmpeg 0.6.1

    android ndk r5b

    cygwin 1.7

    build reference url : http://www.cnblogs.com/scottwong/archive/2010/12/17/1909455.html

    but, ffmpeg ./configure result error ! (below config.err file)

    check_cc
    BEGIN /tmp/ffconf.GlDiY1P8.c
       1   int main(void){ return 0; }
    END /tmp/ffconf.GlDiY1P8.c
    /android-ndk-r5b/toolchains/arm-eabi-4.4.0/prebuilt/windows/bin/arm-eabi-gcc -fPIC -DANDROID -c -o /tmp/ffconf.1kQLpGaU.o /tmp/ffconf.GlDiY1P8.c
    arm-eabi-gcc.exe: /tmp/ffconf.GlDiY1P8.c: No such file or directory

    arm-eabi-gcc.exe: no input files

    C compiler test failed.

    so, i just try test code.

    // test.c code
    int main(){
     return 0;
    }

    /android-ndk-r5b/toolchains/arm-eabi-4.4.0/prebuilt/windows/bin/arm-eabi-gcc -fPIC -DANDROID -c -o ./test.o ./test.c

    ok !!!! no problem.

    but,
    cp ./test.c /tmp (copy to /tmp)

    /android-ndk-r5b/toolchains/arm-eabi-4.4.0/prebuilt/windows/bin/arm-eabi-gcc -fPIC -DANDROID -c -o ./test.o /tmp/test.c

    arm-eabi-gcc.exe: /tmp/test.c: No such file or directory
    arm-eabi-gcc.exe: no input files

    fail !!!
    difference is only file path. /tmp directory exist, and permission is right. /home/test.c is same result.

    what's wrong ?