peregin / gps-overlay-on-video

Telemetry (GPS) data overlay on videos
MIT License
284 stars 36 forks source link

codec H.265 not support #93

Open HedigehoG opened 2 years ago

HedigehoG commented 2 years ago

Video Format : HEVC Width : 3 840 pixels Height : 2 160 pixels Display aspect ratio : 16:9 Frame rate mode : Variable Frame rate : 30.000 FPS

codec H.265 - video not show and not work 21:28:24.687 [AWT-EventQueue-0] DEBUG peregin.gpv.gui.FileChooserPanel - opening /mnt/.../NORM0025.MP4 21:28:24.704 [AWT-EventQueue-0] ERROR org.ffmpeg - [aac @ 0x7f01595425e0] channel element 0.0 is not allocated 21:28:24.727 [AWT-EventQueue-0] INFO p.gpv.video.SeekableVideoStream - duration: 00:05:50.002 Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: could not find video stream in container: /mnt/.../NORM0025.MP4 at peregin.gpv.video.SeekableVideoStream.(SeekableVideoStream.scala:55) at peregin.gpv.video.SeekableVideoPlayer.(SeekableVideoPlayer.scala:24) at peregin.gpv.video.SeekableVideoPlayerFactory.createPlayer(SeekableVideoPlayer.scala:19) at peregin.gpv.video.SeekableVideoPlayerFactory.createPlayer$(SeekableVideoPlayer.scala:18) at peregin.gpv.GpsOverlayApp$$anon$1.createPlayer(GpsOverlayApp.scala:32) at peregin.gpv.GpsOverlayApp$$anon$1.createPlayer(GpsOverlayApp.scala:32) at peregin.gpv.gui.VideoPanel.$anonfun$refresh$2(VideoPanel.scala:53) at peregin.gpv.gui.VideoPanel.$anonfun$refresh$2$adapted(VideoPanel.scala:51) at scala.Option.foreach(Option.scala:437) at peregin.gpv.gui.VideoPanel.refresh(VideoPanel.scala:51) at peregin.gpv.GpsOverlayApp$.openVideoData(GpsOverlayApp.scala:180) at peregin.gpv.GpsOverlayApp$$anon$1$$anonfun$$lessinit$greater$1.apply(GpsOverlayApp.scala:32) at peregin.gpv.GpsOverlayApp$$anon$1$$anonfun$$lessinit$greater$1.apply(GpsOverlayApp.scala:32) at peregin.gpv.gui.FileChooserPanel.openData(FileChooserPanel.scala:33) at peregin.gpv.gui.FileChooserPanel$$anonfun$1.applyOrElse(FileChooserPanel.scala:20) at peregin.gpv.gui.FileChooserPanel$$anonfun$1.applyOrElse(FileChooserPanel.scala:19) at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:35) at scala.swing.Reactions$Impl.$anonfun$apply$1(Reactions.scala:25) at scala.swing.Reactions$Impl.$anonfun$apply$1$adapted(Reactions.scala:25) at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:563) at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:561) at scala.collection.AbstractIterable.foreach(Iterable.scala:926) at scala.swing.Reactions$Impl.apply(Reactions.scala:25) at scala.swing.Reactions$Impl.apply(Reactions.scala:19) at scala.swing.Publisher.$anonfun$publish$1(Publisher.scala:52) at scala.swing.Publisher.$anonfun$publish$1$adapted(Publisher.scala:52) at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:563) at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:561) at scala.swing.SetWrapper.foreach(SetWrapper.scala:20) at scala.swing.Publisher.publish(Publisher.scala:52) at scala.swing.Publisher.publish$(Publisher.scala:52) at scala.swing.Component.publish(Component.scala:45) at scala.swing.AbstractButton.$anonfun$new$1(AbstractButton.scala:47) at scala.swing.AbstractButton.$anonfun$new$1$adapted(AbstractButton.scala:46) at scala.swing.Swing$$anon$3.actionPerformed(Swing.scala:43) at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967) at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308) at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) at java.desktop/java.awt.Component.processMouseEvent(Component.java:6635) at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342) at java.desktop/java.awt.Component.processEvent(Component.java:6400) at java.desktop/java.awt.Container.processEvent(Container.java:2263) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918) at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547) at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

codec H.264 - video show and work 21:35:04.691 [AWT-EventQueue-0] DEBUG peregin.gpv.gui.FileChooserPanel - opening /mnt/.../NORM0026.MP4 21:35:05.048 [AWT-EventQueue-0] ERROR org.ffmpeg - [aac @ 0x7f0158656020] channel element 0.0 is not allocated 21:35:05.436 [AWT-EventQueue-0] INFO p.gpv.video.SeekableVideoStream - duration: 00:00:23.969 21:35:05.436 [AWT-EventQueue-0] INFO p.gpv.video.SeekableVideoStream - frame rate: 30.00 21:35:05.437 [AWT-EventQueue-0] INFO p.gpv.video.SeekableVideoStream - time base: 120000.00

pialanrveze commented 1 year ago

same issue here with the video from GoPro 11 full hd 60 fps.

kvr000 commented 2 months ago

H265 videos should be now support, please check the latest version.