@@ -286,7 +286,15 @@ private Capabilities addForwardCdpEndpoint(
286286  }
287287
288288  private  Container  createBrowserContainer (int  port , Capabilities  sessionCapabilities ) {
289-     Map <String , String > browserContainerEnvVars  = getBrowserContainerEnvVars (sessionCapabilities );
289+     Map <String , String > browserContainerEnvVars  = new  HashMap <>();
290+     // Enable env var to trigger video recording if session capabilities request and external video 
291+     // container is disabled 
292+     if  (videoImage  == null  && recordVideoForSession (sessionCapabilities )) {
293+       browserContainerEnvVars .put ("SE_RECORD_VIDEO" , "true" );
294+       browserContainerEnvVars .put ("SE_VIDEO_FILE_NAME" , "auto" );
295+       browserContainerEnvVars .put ("SE_VIDEO_RECORD_STANDALONE" , "true" );
296+     }
297+     browserContainerEnvVars .putAll (getBrowserContainerEnvVars (sessionCapabilities ));
290298    long  browserContainerShmMemorySize  = 2147483648L ; // 2GB 
291299    ContainerConfig  containerConfig  =
292300        image (browserImage )
@@ -295,6 +303,10 @@ private Container createBrowserContainer(int port, Capabilities sessionCapabilit
295303            .network (networkName )
296304            .devices (devices )
297305            .applyHostConfig (hostConfig , hostConfigKeys );
306+     Optional <DockerAssetsPath > path  = ofNullable (this .assetsPath );
307+     if  (path .isPresent () && videoImage  == null  && recordVideoForSession (sessionCapabilities )) {
308+       containerConfig .bind (Collections .singletonMap (this .assetsPath .getHostPath (), "/videos" ));
309+     }
298310    if  (!runningInDocker ) {
299311      containerConfig  = containerConfig .map (Port .tcp (4444 ), Port .tcp (port ));
300312    }
@@ -335,7 +347,7 @@ private void setCapsToEnvVars(
335347
336348  private  Container  startVideoContainer (
337349      Capabilities  sessionCapabilities , String  browserContainerIp , String  hostPath ) {
338-     if  (!recordVideoForSession (sessionCapabilities )) {
350+     if  (videoImage  ==  null  ||  !recordVideoForSession (sessionCapabilities )) {
339351      return  null ;
340352    }
341353    int  videoPort  = 9000 ;
0 commit comments