forked from MoonsideGames/MoonWorks
				
			fix some scenarios where video pointers should not be replaced
							parent
							
								
									b65d4e391c
								
							
						
					
					
						commit
						c83997609f
					
				| 
						 | 
					@ -17,7 +17,7 @@ namespace MoonWorks.Video
 | 
				
			||||||
		public uint yStride;
 | 
							public uint yStride;
 | 
				
			||||||
		public uint uvStride;
 | 
							public uint uvStride;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		public bool FrameDataUpdated { get; private set; }
 | 
							public bool FrameDataUpdated { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		bool IsDisposed;
 | 
							bool IsDisposed;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,18 +44,29 @@ namespace MoonWorks.Video
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			lock (this)
 | 
								lock (this)
 | 
				
			||||||
			{
 | 
								{
 | 
				
			||||||
				if (Dav1dfile.df_readvideo(
 | 
									if (!Ended)
 | 
				
			||||||
					Handle,
 | 
									{
 | 
				
			||||||
					1,
 | 
										if (Dav1dfile.df_readvideo(
 | 
				
			||||||
					out yDataHandle,
 | 
											Handle,
 | 
				
			||||||
					out uDataHandle,
 | 
											1,
 | 
				
			||||||
					out vDataHandle,
 | 
											out var yDataHandle,
 | 
				
			||||||
					out yDataLength,
 | 
											out var uDataHandle,
 | 
				
			||||||
					out uvDataLength,
 | 
											out var vDataHandle,
 | 
				
			||||||
					out yStride,
 | 
											out var yDataLength,
 | 
				
			||||||
					out uvStride) == 1
 | 
											out var uvDataLength,
 | 
				
			||||||
				) {
 | 
											out var yStride,
 | 
				
			||||||
					FrameDataUpdated = true;
 | 
											out var uvStride) == 1
 | 
				
			||||||
 | 
										) {
 | 
				
			||||||
 | 
											this.yDataHandle = yDataHandle;
 | 
				
			||||||
 | 
											this.uDataHandle = uDataHandle;
 | 
				
			||||||
 | 
											this.vDataHandle = vDataHandle;
 | 
				
			||||||
 | 
											this.yDataLength = yDataLength;
 | 
				
			||||||
 | 
											this.uvDataLength = uvDataLength;
 | 
				
			||||||
 | 
											this.yStride = yStride;
 | 
				
			||||||
 | 
											this.uvStride = uvStride;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
											FrameDataUpdated = true;
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -170,6 +170,7 @@ namespace MoonWorks.Video
 | 
				
			||||||
				if (CurrentStream.FrameDataUpdated)
 | 
									if (CurrentStream.FrameDataUpdated)
 | 
				
			||||||
				{
 | 
									{
 | 
				
			||||||
					UpdateRenderTexture();
 | 
										UpdateRenderTexture();
 | 
				
			||||||
 | 
										CurrentStream.FrameDataUpdated = false;
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				currentFrame = thisFrame;
 | 
									currentFrame = thisFrame;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue