MPEG4 is getting audio only video is missing

Sulabh Khanal 2019-01-18 13:40:37 UTC in WMSPanel functionality


I am trying to stream HLS from a very low bitrate MPEG4 stream but only audio is being played and video is blank. I am pulling udp multicast stream via ffmpeg => transcoding it into mpeg4 => pushing it to wmspanel/nimble via udp:

ffmpeg -re -timeout 2000 -i 'udp://@' -pix_fmt yuv420p -aspect 16:9 -filter:v yadif=0:-1:1,fps=25 -c:v mpeg4 -vtag xvid -s 176:144 -b:v 74k -c:a aac -b:a 64k -ar 44100 -framerate 20 -strict -2 -max_muxing_queue_size 1024 -f mpegts 'udp://' </dev/null >/dev/null 2>/root/mpeg4.log &

The following is the ffmpeg output:
Input #0, mpegts, from 'udp://@':
Duration: N/A, start: 50971.689489, bitrate: N/A
Program 98
service_name : #########
service_provider: ########
Stream #0:0[0x63]: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt470bg, top first), 720x576 [SAR 12:11 DAR 15:11], 25 fps, 50 tbr, 90k tbn, 50 tbc
Stream #0:1[0x64](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 128 kb/s
Stream #0:2[0x65](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 64 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> mpeg4 (native))
Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
Press [q] to stop, [?] for help
[h264 @ 0x55e294d23460] reference picture missing during reorderbitrate= -0.0kbits/s speed=N/A
[h264 @ 0x55e294d23460] Missing reference picture, default is 65413
[h264 @ 0x55e294e00ce0] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x55e294e00ce0] number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one
[h264 @ 0x55e294b76aa0] mmco: unref short failure
[h264 @ 0x55e294e1fa80] mmco: unref short failure
[mpeg4 @ 0x55e294c233c0] too many threads/slices (10), reducing to 9ate= -0.0kbits/s speed=N/A
Output #0, mpegts, to 'udp://':
encoder : Lavf57.83.100
Stream #0:0: Video: mpeg4, yuv420p, 176x144 [SAR 16:11 DAR 16:9], q=2-31, 74 kb/s, 25 fps, 90k tbn, 25 tbc
encoder : Lavc57.107.100 mpeg4
Side data:
cpb: bitrate max/min/avg: 0/0/74000 buffer size: 0 vbv_delay: -1
Stream #0:1(eng): Audio: aac (LC), 44100 Hz, stereo, fltp, 64 kb/s
encoder : Lavc57.107.100 aac
root@vm2:~# fps= 25 q=31.0 size= 3790kB time=00:02:40.12 bitrate= 193.9kbits/s speed=0.998x

I have pulled the above mpegts udp stream via wmspanel/MPEGTS In and streaming via hls through MPEGTS Out. In MPEGTS out, I can see that both VIDEO and profile audio profiles are being loaded (udp:// Stream 256 (MPEG-4 Video) udp:// Stream 257 (MPEG-2 AAC Audio)

However, when I play the HLS stream, there is no video but audio is playing.
The video is playing when I use x264 codec in ffmpeg. As listed in MPEG4 Video is supported.
Could you please suggest?

Denis Slobodskoy 2019-01-21 02:59:37 UTC 

Please remove -vtag xvid option (or use -vtag h263) since Nimble doesn't recognize this setting. Also, if you would like to play it in a browser, use H.264 encoder ( -c:v libx264) instead of mpeg4.

Sulabh Khanal 2019-01-21 12:57:45 UTC 

Thank you Denis.
I can now play the video stream on VLC player. However, webplayers ( still do not play the video and the video on the stream's dvr is also missing. I guess its best to use H.264 encoder for best compatibility.

joseph karl 2019-04-05 06:48:25 UTC 

The audio file is not getting send through the email and I am currently using outlook and from past few days I am having an error on the outlook and I have contacted to get it fixed.

officially4h 2019-04-14 05:45:33 UTC 

TubeMate is an application that can do the job for you. Have faced the problem with Vimeo videos and have got it resolved
There are a few browser plug ins as well that are available in the web store that do the same job

Post a reply

Post a new question



nimbleNimble StreamerFAQHLSDVRRTMPhlsnimble streamerABRwmsauthcacheNimbleffmpegAPIapitranscoderdvrVODstreamingfailoverDASHwmspanelrtmpvodudprtsppaywallsubtitlesRTSPDispersayoutubelivelivestreamingmp4MPEG-DASHWMSAuthgeopay-per-viewdashstreamerabrWindowsencryptionUDPwhite labelconfiguser agentsmilvideoFFMPEGmulticastMPEG-TSaudioedgere-streamingCORSraspberry pichunksandroidsldpbandwidthmpeg-dashadvertizerDRMvlcrules.confadvertisingipv6FastSpringRAMwms panelthumbnailFMLEVATcrossdomainupdatehttpsmpegtsRecordingSMILplaylistpushaesakamaiserverssslSRTwowzam3u8TranscodeerrorSSLbalanceplaylist_dvrWowzachromecastconfigurationreportingsrtbugIDdownloadS3corsnimblestreamerdomainperformanceIPmpeg-tschunkraspianawspublish controlcodecmobileWMSPanelrepublishingloopVidillionHttpsnimble webcam html5UIRegistration Issuedirect link32-bit Windowstwitchanalysecache_controlitworkmelive abr support mpeg-dashrtmp abrbeirutWWDCdubaideep statshls to multicast udplogIIS Smooth StreamingcloudmediaCDNHTTPSAbrHot-linking protectionHDSvaddioMPEGTSalertsNDIViewer Statsjwplayer websitewhmcsbaselineAuthentication in HLSnginx rtmp nimbleCentOS v6.4durationAV BridgepricelimitOld logsVaddioscreencastPI3 Ubuntuview timewmspanelapiattaching domainsinterfacesDVRRecordingWMSCONFIG_HOMEmessageloadbalancingrestreamcostmetadatamod_rewriteoriginprofileAxisgbpsID3 tagsanalisyswmsauthsignhighhds streamhls hotlinkVideo Playertransocding republishingdecodergentoo install server nimbleAliastranscoding using NvidiaPublic IpPaywall Authlost trafficdocumentationofflineconcurrent-connectionsTrancoderfilelebanonlocationmanifestipMP4 not playedspaceicecast urlruleServer-sidetasks-controlhot linkingseekingchangestoppedamfmainplayoutPlayReadylimuxamazon web servicedvr streamconnectivityunique visitordvr stream twiceonAXVVGhot-linkpay per viewaliasdata slicesblockHLS vodmpeg dash7TCOanalyticsapplicationpaywalbrandingopenssltrialMP4microsoft streamerrorsrocksoftlog traffic statsExpression EncoderdebianABR DASHprogressive downloadHLS Playermultiple originsFFmpegnimblesessionidDASH Playerlive video on demandbandwithCSSserverlog nimble analysertmp playbackvideojsbitrateadaptiveAV1 codecprivate networkJWPLAYERNGINX-RTMPSnapshotsno WMSPanellive videoPullmac osx installsourcecrossdomain more then 1 domain4KwotermarksoundHLS Meta Tag editing.streamsattachmenthelp errorvimeoload balanceconcurrent connectionvod no soundbuttcdnvsomFairplayfallbackamazonControl APIlive streamTranscoderLive streamingWidevineRemote StorageWowza Agentsecuritynot foundpullmpeg2tsServer-Side-Task-ControlAS3disk migrationstereo to monoscreen captureinstall players setup ready to goDVRSettingstwitch larix broadcaster androidAppleDelete recordsicecastdrmresourceaes encryptionsubscriptionlive pull settingsABR HLS Bitratesvideo looprtmp for YouTubestarttime duration seekpointrebootdvr streamsmonitornimble streamer web server php script pageautomationNimble Streamer APIlivestreamoutrateIIS Media Servicsrtmp republishing transcodenimble.confDeep statsapi accessNimble CapacityABR DVR probleminterleavingweb playernimble streamer vod hls transmuxingloggingLive SwitcherlearnerCross Domainscreen freezecan't registercontent-dispositionnot to stealLive Broadcastinsert logoheaderactionscript 3block downloadAVCaptureMovieFileOutputNimble ServerbroadcasterUbuntu artful 17.10Transcoder MPEG DASHMPEG DASHadd_chunk failedPost processingfake extensiontranscodingFFMPEG;RTMP;I/O errorstatus:errorHotlinking ProtectionStreaming routeMPEG-Dashlarix broadcasternimble on cloudroutesprerollThumbnailsserver incorrect timepremium featureLIVELivepaymentincoming streamno soundstatsHow to do live stream with multiple audio tracknimble aliasesProgressivereloadRTMP republishrmtpno internetvp9addemandSecurelivestreamintransocderraspberryavoid refreshreportsAndroiduser_agentdvr on wmspanelS3 AWScloudfrontIOSrestartPIDHLS Streamingthumbnail dvr-thumbnailwmsAuthSignnimble streamer mpeg-ts multiple inputsLoad-BalancingcredentialslatencytranscodeRepublishingadjustDVR SettingPORTHTML5 playerdelaympeg4issuepricingtranscoder nimbleBroadcastLarixABR bitratesPacketizingbuildTeradek Decoderubuntu 18SLDPav1 codec21server iphttp servera recordVR-360Failoverstorage space availablediskNimble connectionsabr fallbackDVRStreamsrulesError when installingdissapointmentpay-per-minuteAWSSO_RCVBUFbuffering videolivestream bitrateUDP Multicastlogo in streamMPEG2 VideossaiDVR Setting limitbufferprogressivewebhookdvr to livefastspringmp2 audiocache expiryQuickTimevideo streamingrtsp push androidartifactstraffichd25publish streamAArch64storagealias route.movdistributionoutputVOD HLS streaming on public IPdomain lockRTMP Republishcontentspeedup my videoiOSqataritworkscdnvideo.js

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the Privacy Policy. If you want to know more or withdraw your consent to all or some of the cookies, please refer to the Privacy Policy.
By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to the use of cookies.