Recherche avancée

Médias (0)

Mot : - Tags -/organisation

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

Autres articles (35)

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

  • Contribute to documentation

    13 avril 2011

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

  • Use, discuss, criticize

    13 avril 2011, par

    Talk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
    The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
    A discussion list is available for all exchanges between users.

Sur d’autres sites (5586)

  • Invalid NAL unit size for MP4 created from NALU with 2-byte start code (0x0001)

    3 septembre 2020, par rsc

    I have a mp4 muxer that works fine when the H264 NALU has the 3-byte start code (0x000001). I am adapting it to support 2-byte start code (0x0001) but I am stuck with a bug that I am not able to identify. The MP4 generated open in VLC and MediaPlayer but no video is displayed. In VLC statistics shows that it is decoding blocks but stays with 0 frames displayed.

    


    I then ran a error analyzer using ffmpeg (ffmpeg -v error -i myvideo.mp4 -f null - 2>error.log that shows me the following output :

    


    [h264 @ 0x7fa3b5003200] Invalid NAL unit size (158559 > 158558).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (9338 > 9337).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (6582 > 6581).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (8300 > 8299).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (9336 > 9335).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (9422 > 9421).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (10448 > 10447).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (9208 > 9207).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (8776 > 8775).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (11376 > 11375).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (158311 > 158310).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (9164 > 9163).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (7994 > 7993).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (9974 > 9973).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (9282 > 9281).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.
[h264 @ 0x7fa3b5003200] Invalid NAL unit size (9656 > 9655).
[h264 @ 0x7fa3b5003200] Error splitting the input into NAL units.


    


    I am trying to find why it is complaining about 1 byte difference in all mdat boxes. Also, the smaller values (e.g : 158558) are 12 bytes lower than the size written inside the mdat header.

    


    Anyone could help indicate why that error is happening ? The same code is working fine to create MP4 with 3-byte NALU start code.

    


  • OMXCodec die when start decoding

    24 mars 2017, par peter zhu

    I’d like to retrieve frames from video file.

    My code followed the article Use Android Hardware Decoder with OMXCodec in NDK, and also referred the code of AwesomePlayer.cpp(AOSP) and libstagefright.cpp(ffmpeg). But it still hangs whenever OMXCodec start decoding. I have no idea what the problem is.

    I’d grateful for any help.

    the code :

    int main(int argc, char *argv[])
    {
       OMXClient mClient;
       status_t ret = mClient.connect();
       LOGD("connect status is %d\n", ret);

       sp<datasource> mDs = DataSource::CreateFromURI("file:///sdcard/display/lwtwjod.mp4");
       off64_t size = 0;
       ret = mDs->getSize(&amp;size);
       LOGD("getSize[ret=%d]: %lld\n", ret, size);

       sp<mediaextractor> mMe = MediaExtractor::Create(mDs);
       size_t tracksNum = mMe->countTracks();
       LOGD("%u tracks\n", tracksNum);

       sp<mediasource> mMs;

       bool hasVideo = false;
       for(size_t i = 0; i != mMe->countTracks(); i++){
       sp<metadata> mMd_track = mMe->getTrackMetaData(i);
           const char *_mime;
       mMd_track->findCString(kKeyMIMEType, &amp;_mime);
           LOGD("the mime is %s\n", _mime);
           String8 mime = String8(_mime);

           if (!strncasecmp(mime.string(), "video/", 6)) {
           LOGD("find video track!\n");
           hasVideo = true;
           mMs = mMe->getTrack(i);
           int wid, hei;
           mMd_track->findInt32(kKeyWidth, &amp;wid);
           mMd_track->findInt32(kKeyHeight, &amp;hei);
           LOGD("width: %d, height: %d\n", wid, hei);
           break;
       }
       }

       if(hasVideo){
       sp<mediasource> decoder =
           OMXCodec::Create(mClient.interface(), mMs->getFormat(),
                    false, mMs,
                    NULL, OMXCodec::kClientNeedsFramebuffer);
       LOGD("start decoding..\n");
       ret = decoder->start(); // hangs here
       LOGD("decoding return: %d\n", ret);

       for(;;){
           MediaBuffer *buffer;
           buffer = NULL;
           ret = decoder->read(&amp;buffer);
           LOGD("read decoded buffer result: %d\n", ret);
           break;
       }
       }    
    }  
    </mediasource></metadata></mediasource></mediaextractor></datasource>

    The logcat output :

    I/OMXClient( 5470): Using client-side OMX mux.
    D/NativeCodec( 5470): connect status is 0
    D/NativeCodec( 5470): getSize[ret=0]: 165748860
    D/NativeCodec( 5470): 2 tracks
    D/NativeCodec( 5470): the mime is video/avc
    D/NativeCodec( 5470): find video track!
    D/OMXCodec( 5470): Successfully allocated OMX node 'OMX.qcom.video.decoder.avc'
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] AVC profile = 100 (High), level = 31
    E/OMX-VDEC-1080P(  197):
    E/OMX-VDEC-1080P(  197):  No color conversion required
    E/OMX-VDEC-1080P(  197):
    E/OMX-VDEC-1080P(  197):  No color conversion required
    E/OMX-VDEC-1080P(  197):
    E/OMX-VDEC-1080P(  197):  No color conversion required
    E/OMX-VDEC-1080P(  197):
    E/OMX-VDEC-1080P(  197):  No color conversion required
    E/OMX-VDEC-1080P(  197):
    E/OMX-VDEC-1080P(  197):  No color conversion required
    E/OMX-VDEC-1080P(  197):
    E/OMX-VDEC-1080P(  197):  No color conversion required
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] video dimensions are 1280 x 720
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] Crop rect is 1280 x 720 @ (0, 0)
    D/NativeCodec( 5470): start decoding..
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocating 2 buffers of size 2097152 on input port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8e39390 on input port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8e393e0 on input port
    E/OMX-VDEC-1080P(  197):
    E/OMX-VDEC-1080P(  197):  No color conversion required
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocating 15 buffers of size 1433600 on output port
    E/OMX-VDEC-1080P(  197): GET_MV_BUFFER_SIZE returned: Size: 245760 and alignment: 8192
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9b08 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9b58 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9ba8 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9bf8 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9c48 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9c98 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9ce8 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9d38 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9d88 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9dd8 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9e28 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9e78 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9ec8 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9f18 on output port
    I/OMXCodec( 5470): [OMX.qcom.video.decoder.avc] allocated buffer 0xb8eb9f68 on output port
    E/OMXNodeInstance(  197): !!! Observer died. Quickly, do something, ... anything...
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9f68 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9f18 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9ec8 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9e78 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9e28 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9dd8 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9d88 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9d38 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9ce8 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9c98 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9c48 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9bf8 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9ba8 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9b58 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8eb9b08 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8e393e0 successful
    I/OMXNodeInstance(  197): OMX_FreeBuffer for buffer header 0xb8e39390 successful
    E/OMX-VDEC-1080P(  197):
    E/OMX-VDEC-1080P(  197):  Error in ioctl read next msg
    E/        (  197):
    E/        (  197):  Destroy C2D instance
    E/        (  197):
    E/        (  197):  Destroy C2D instance
  • avfilter/showvolume : move width test for draw volume to the start of the loop

    31 mars 2018, par Martin Vignali
    avfilter/showvolume : move width test for draw volume to the start of the loop
    
    • [DH] libavfilter/avf_showvolume.c